This commit is contained in:
HueByte
2026-02-19 21:50:22 +00:00
parent 3b79c0eb6d
commit 4c105b6c68
72 changed files with 15202 additions and 336 deletions
+1
View File
@@ -94,6 +94,7 @@
<li>Theme system and customization</li>
<li>Command system reference</li>
<li>Configuration management</li>
<li><a href="../../articles/notification-sounds.html">Notification sounds</a></li>
</ul>
</article>
@@ -259,6 +259,66 @@ Class CommandHandler <a class="header-action link-secondary" title="View source
<h3 id="EchoHub_Client_Commands_CommandHandler_OnAssignRole" data-uid="EchoHub.Client.Commands.CommandHandler.OnAssignRole">
OnAssignRole
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Commands/CommandHandler.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public event Func&lt;string, string, Task&gt;? OnAssignRole</code></pre>
</div>
<h4 class="section">Event Type</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.func-3">Func</a>&lt;<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a>, <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a>, <span class="xref">Task</span>&gt;</dt>
<dd></dd>
</dl>
<h3 id="EchoHub_Client_Commands_CommandHandler_OnBanUser" data-uid="EchoHub.Client.Commands.CommandHandler.OnBanUser">
OnBanUser
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Commands/CommandHandler.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public event Func&lt;string, string?, Task&gt;? OnBanUser</code></pre>
</div>
<h4 class="section">Event Type</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.func-3">Func</a>&lt;<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a>, <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a>, <span class="xref">Task</span>&gt;</dt>
<dd></dd>
</dl>
<h3 id="EchoHub_Client_Commands_CommandHandler_OnHelp" data-uid="EchoHub.Client.Commands.CommandHandler.OnHelp">
OnHelp
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Commands/CommandHandler.cs"><i class="bi bi-code-slash"></i></a>
@@ -319,6 +379,36 @@ Class CommandHandler <a class="header-action link-secondary" title="View source
<h3 id="EchoHub_Client_Commands_CommandHandler_OnKickUser" data-uid="EchoHub.Client.Commands.CommandHandler.OnKickUser">
OnKickUser
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Commands/CommandHandler.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public event Func&lt;string, string?, Task&gt;? OnKickUser</code></pre>
</div>
<h4 class="section">Event Type</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.func-3">Func</a>&lt;<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a>, <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a>, <span class="xref">Task</span>&gt;</dt>
<dd></dd>
</dl>
<h3 id="EchoHub_Client_Commands_CommandHandler_OnLeaveChannel" data-uid="EchoHub.Client.Commands.CommandHandler.OnLeaveChannel">
OnLeaveChannel
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Commands/CommandHandler.cs"><i class="bi bi-code-slash"></i></a>
@@ -379,6 +469,66 @@ Class CommandHandler <a class="header-action link-secondary" title="View source
<h3 id="EchoHub_Client_Commands_CommandHandler_OnMuteUser" data-uid="EchoHub.Client.Commands.CommandHandler.OnMuteUser">
OnMuteUser
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Commands/CommandHandler.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public event Func&lt;string, int?, Task&gt;? OnMuteUser</code></pre>
</div>
<h4 class="section">Event Type</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.func-3">Func</a>&lt;<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a>, <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a>?, <span class="xref">Task</span>&gt;</dt>
<dd></dd>
</dl>
<h3 id="EchoHub_Client_Commands_CommandHandler_OnNukeChannel" data-uid="EchoHub.Client.Commands.CommandHandler.OnNukeChannel">
OnNukeChannel
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Commands/CommandHandler.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public event Func&lt;Task&gt;? OnNukeChannel</code></pre>
</div>
<h4 class="section">Event Type</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.func-1">Func</a>&lt;<span class="xref">Task</span>&gt;</dt>
<dd></dd>
</dl>
<h3 id="EchoHub_Client_Commands_CommandHandler_OnOpenProfile" data-uid="EchoHub.Client.Commands.CommandHandler.OnOpenProfile">
OnOpenProfile
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Commands/CommandHandler.cs"><i class="bi bi-code-slash"></i></a>
@@ -478,7 +628,7 @@ Class CommandHandler <a class="header-action link-secondary" title="View source
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public event Func&lt;string, Task&gt;? OnSendFile</code></pre>
<pre><code class="lang-csharp hljs">public event Func&lt;string, string?, Task&gt;? OnSendFile</code></pre>
</div>
@@ -488,7 +638,7 @@ Class CommandHandler <a class="header-action link-secondary" title="View source
<h4 class="section">Event Type</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.func-2">Func</a>&lt;<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a>, <span class="xref">Task</span>&gt;</dt>
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.func-3">Func</a>&lt;<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a>, <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a>, <span class="xref">Task</span>&gt;</dt>
<dd></dd>
</dl>
@@ -679,6 +829,96 @@ Class CommandHandler <a class="header-action link-secondary" title="View source
<h3 id="EchoHub_Client_Commands_CommandHandler_OnTestSound" data-uid="EchoHub.Client.Commands.CommandHandler.OnTestSound">
OnTestSound
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Commands/CommandHandler.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public event Func&lt;Task&gt;? OnTestSound</code></pre>
</div>
<h4 class="section">Event Type</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.func-1">Func</a>&lt;<span class="xref">Task</span>&gt;</dt>
<dd></dd>
</dl>
<h3 id="EchoHub_Client_Commands_CommandHandler_OnUnbanUser" data-uid="EchoHub.Client.Commands.CommandHandler.OnUnbanUser">
OnUnbanUser
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Commands/CommandHandler.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public event Func&lt;string, Task&gt;? OnUnbanUser</code></pre>
</div>
<h4 class="section">Event Type</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.func-2">Func</a>&lt;<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a>, <span class="xref">Task</span>&gt;</dt>
<dd></dd>
</dl>
<h3 id="EchoHub_Client_Commands_CommandHandler_OnUnmuteUser" data-uid="EchoHub.Client.Commands.CommandHandler.OnUnmuteUser">
OnUnmuteUser
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Commands/CommandHandler.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public event Func&lt;string, Task&gt;? OnUnmuteUser</code></pre>
</div>
<h4 class="section">Event Type</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.func-2">Func</a>&lt;<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a>, <span class="xref">Task</span>&gt;</dt>
<dd></dd>
</dl>
</article>
<div class="contribution d-print-none">
@@ -244,6 +244,37 @@ Class ClientConfig <a class="header-action link-secondary" title="View source"
<a id="EchoHub_Client_Config_ClientConfig_Notifications_" data-uid="EchoHub.Client.Config.ClientConfig.Notifications*"></a>
<h3 id="EchoHub_Client_Config_ClientConfig_Notifications" data-uid="EchoHub.Client.Config.ClientConfig.Notifications">
Notifications
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Config/ClientConfig.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public NotificationConfig Notifications { get; set; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="EchoHub.Client.Config.NotificationConfig.html">NotificationConfig</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Client_Config_ClientConfig_SavedServers_" data-uid="EchoHub.Client.Config.ClientConfig.SavedServers*"></a>
<h3 id="EchoHub_Client_Config_ClientConfig_SavedServers" data-uid="EchoHub.Client.Config.ClientConfig.SavedServers">
@@ -0,0 +1,303 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Class NotificationConfig | EchoHub Documentation </title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="title" content="Class NotificationConfig | EchoHub Documentation ">
<link rel="icon" href="../../images/hue_icon.svg">
<link rel="stylesheet" href="../../public/docfx.min.css">
<link rel="stylesheet" href="../../public/main.css">
<meta name="docfx:navrel" content="../../toc.html">
<meta name="docfx:tocrel" content="../toc.html">
<meta name="docfx:rel" content="../../">
<meta name="docfx:docurl" content="https://github.com/HueByte/EchoHub/new/master/apiSpec/new?filename=EchoHub_Client_Config_NotificationConfig.md&amp;value=---%0Auid%3A%20EchoHub.Client.Config.NotificationConfig%0Asummary%3A%20&#39;*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax&#39;%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">
<meta name="loc:inThisArticle" content="In this article">
<meta name="loc:searchResultsCount" content="{count} results for &quot;{query}&quot;">
<meta name="loc:searchNoResults" content="No results for &quot;{query}&quot;">
<meta name="loc:tocFilter" content="Filter by title">
<meta name="loc:nextArticle" content="Next">
<meta name="loc:prevArticle" content="Previous">
<meta name="loc:themeLight" content="Light">
<meta name="loc:themeDark" content="Dark">
<meta name="loc:themeAuto" content="Auto">
<meta name="loc:changeTheme" content="Change theme">
<meta name="loc:copy" content="Copy">
<meta name="loc:downloadPdf" content="Download PDF">
<script type="module" src="./../../public/docfx.min.js"></script>
<script>
const theme = localStorage.getItem('theme') || 'auto'
document.documentElement.setAttribute('data-bs-theme', theme === 'auto' ? (window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light') : theme)
</script>
</head>
<body class="tex2jax_ignore" data-layout="" data-yaml-mime="ManagedReference">
<header class="bg-body border-bottom">
<nav id="autocollapse" class="navbar navbar-expand-md" role="navigation">
<div class="container-xxl flex-nowrap">
<a class="navbar-brand" href="../../index.html">
<img id="logo" class="svg" src="../../images/hue_icon.svg" alt="EchoHub">
EchoHub
</a>
<button class="btn btn-lg d-md-none border-0" type="button" data-bs-toggle="collapse" data-bs-target="#navpanel" aria-controls="navpanel" aria-expanded="false" aria-label="Toggle navigation">
<i class="bi bi-three-dots"></i>
</button>
<div class="collapse navbar-collapse" id="navpanel">
<div id="navbar">
<form class="search" role="search" id="search">
<i class="bi bi-search"></i>
<input class="form-control" id="search-query" type="search" disabled placeholder="Search" autocomplete="off" aria-label="Search">
</form>
</div>
</div>
</div>
</nav>
</header>
<main class="container-xxl">
<div class="toc-offcanvas">
<div class="offcanvas-md offcanvas-start" tabindex="-1" id="tocOffcanvas" aria-labelledby="tocOffcanvasLabel">
<div class="offcanvas-header">
<h5 class="offcanvas-title" id="tocOffcanvasLabel">Table of Contents</h5>
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" data-bs-target="#tocOffcanvas" aria-label="Close"></button>
</div>
<div class="offcanvas-body">
<nav class="toc" id="toc"></nav>
</div>
</div>
</div>
<div class="content">
<div class="actionbar">
<button class="btn btn-lg border-0 d-md-none" type="button" data-bs-toggle="offcanvas" data-bs-target="#tocOffcanvas" aria-controls="tocOffcanvas" aria-expanded="false" aria-label="Show table of contents">
<i class="bi bi-list"></i>
</button>
<nav id="breadcrumb"></nav>
</div>
<article data-uid="EchoHub.Client.Config.NotificationConfig">
<h1 id="EchoHub_Client_Config_NotificationConfig" data-uid="EchoHub.Client.Config.NotificationConfig" class="text-break">
Class NotificationConfig <a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Config/ClientConfig.cs"><i class="bi bi-code-slash"></i></a>
</h1>
<div class="facts text-secondary">
<dl><dt>Namespace</dt><dd><a class="xref" href="EchoHub.html">EchoHub</a>.<a class="xref" href="EchoHub.Client.html">Client</a>.<a class="xref" href="EchoHub.Client.Config.html">Config</a></dd></dl>
<dl><dt>Assembly</dt><dd>EchoHub.Client.dll</dd></dl>
</div>
<div class="markdown summary"></div>
<div class="markdown conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public class NotificationConfig</code></pre>
</div>
<dl class="typelist inheritance">
<dt>Inheritance</dt>
<dd>
<div><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object">object</a></div>
<div><span class="xref">NotificationConfig</span></div>
</dd>
</dl>
<dl class="typelist inheritedMembers">
<dt>Inherited Members</dt>
<dd>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.gettype">object.GetType()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.memberwiseclone">object.MemberwiseClone()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.tostring">object.ToString()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object)">object.Equals(object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object-system-object)">object.Equals(object, object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.referenceequals">object.ReferenceEquals(object, object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.gethashcode">object.GetHashCode()</a>
</div>
</dd></dl>
<h2 class="section" id="constructors">Constructors
</h2>
<a id="EchoHub_Client_Config_NotificationConfig__ctor_" data-uid="EchoHub.Client.Config.NotificationConfig.#ctor*"></a>
<h3 id="EchoHub_Client_Config_NotificationConfig__ctor" data-uid="EchoHub.Client.Config.NotificationConfig.#ctor">
NotificationConfig()
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Config/ClientConfig.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public NotificationConfig()</code></pre>
</div>
<h2 class="section" id="properties">Properties
</h2>
<a id="EchoHub_Client_Config_NotificationConfig_Enabled_" data-uid="EchoHub.Client.Config.NotificationConfig.Enabled*"></a>
<h3 id="EchoHub_Client_Config_NotificationConfig_Enabled" data-uid="EchoHub.Client.Config.NotificationConfig.Enabled">
Enabled
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Config/ClientConfig.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public bool Enabled { get; set; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Client_Config_NotificationConfig_SoundFile_" data-uid="EchoHub.Client.Config.NotificationConfig.SoundFile*"></a>
<h3 id="EchoHub_Client_Config_NotificationConfig_SoundFile" data-uid="EchoHub.Client.Config.NotificationConfig.SoundFile">
SoundFile
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Config/ClientConfig.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public string? SoundFile { get; set; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Client_Config_NotificationConfig_Volume_" data-uid="EchoHub.Client.Config.NotificationConfig.Volume*"></a>
<h3 id="EchoHub_Client_Config_NotificationConfig_Volume" data-uid="EchoHub.Client.Config.NotificationConfig.Volume">
Volume
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Config/ClientConfig.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public byte Volume { get; set; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.byte">byte</a></dt>
<dd></dd>
</dl>
</article>
<div class="contribution d-print-none">
<a href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Config/ClientConfig.cs" class="edit-link">Edit this page</a>
</div>
</div>
<div class="affix">
<nav id="affix"></nav>
</div>
</main>
<div class="container-xxl search-results" id="search-results"></div>
<footer class="border-top text-secondary">
<div class="container-xxl">
<div class="flex-fill">
<div class='footer-custom'><div class='footer-inner'><span class='footer-brand'>EchoHub</span><span class='footer-sep'>&middot;</span><a href='https://github.com/HueByte/EchoHub'>GitHub</a><span class='footer-sep'>&middot;</span><a href='https://echohub.voidcube.cloud'>Website</a><span class='footer-sep'>&middot;</span><span class='footer-credit'>Built with <a href='https://dotnet.github.io/docfx'>DocFX</a></span></div></div>
</div>
</div>
</footer>
</body>
</html>
+4
View File
@@ -106,6 +106,10 @@ Classes
<dt><a class="xref" href="EchoHub.Client.Config.ConfigManager.html">ConfigManager</a></dt>
<dd></dd>
</dl>
<dl class="jumplist">
<dt><a class="xref" href="EchoHub.Client.Config.NotificationConfig.html">NotificationConfig</a></dt>
<dd></dd>
</dl>
<dl class="jumplist">
<dt><a class="xref" href="EchoHub.Client.Config.SavedServer.html">SavedServer</a></dt>
<dd></dd>
+314 -10
View File
@@ -287,10 +287,10 @@ Class ApiClient <a class="header-action link-secondary" title="View source" hre
</h2>
<a id="EchoHub_Client_Services_ApiClient_CreateChannelAsync_" data-uid="EchoHub.Client.Services.ApiClient.CreateChannelAsync*"></a>
<a id="EchoHub_Client_Services_ApiClient_AssignRoleAsync_" data-uid="EchoHub.Client.Services.ApiClient.AssignRoleAsync*"></a>
<h3 id="EchoHub_Client_Services_ApiClient_CreateChannelAsync_System_String_System_String_" data-uid="EchoHub.Client.Services.ApiClient.CreateChannelAsync(System.String,System.String)">
CreateChannelAsync(string, string?)
<h3 id="EchoHub_Client_Services_ApiClient_AssignRoleAsync_System_String_EchoHub_Core_Models_ServerRole_" data-uid="EchoHub.Client.Services.ApiClient.AssignRoleAsync(System.String,EchoHub.Core.Models.ServerRole)">
AssignRoleAsync(string, ServerRole)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Services/ApiClient.cs"><i class="bi bi-code-slash"></i></a>
</h3>
@@ -298,7 +298,83 @@ Class ApiClient <a class="header-action link-secondary" title="View source" hre
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public Task&lt;ChannelDto?&gt; CreateChannelAsync(string name, string? topic = null)</code></pre>
<pre><code class="lang-csharp hljs">public Task AssignRoleAsync(string username, ServerRole role)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>username</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>role</code> <a class="xref" href="../core/EchoHub.Core.Models.ServerRole.html">ServerRole</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">Task</span></dt>
<dd></dd>
</dl>
<a id="EchoHub_Client_Services_ApiClient_BanUserAsync_" data-uid="EchoHub.Client.Services.ApiClient.BanUserAsync*"></a>
<h3 id="EchoHub_Client_Services_ApiClient_BanUserAsync_System_String_System_String_" data-uid="EchoHub.Client.Services.ApiClient.BanUserAsync(System.String,System.String)">
BanUserAsync(string, string?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Services/ApiClient.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public Task BanUserAsync(string username, string? reason = null)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>username</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>reason</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">Task</span></dt>
<dd></dd>
</dl>
<a id="EchoHub_Client_Services_ApiClient_CreateChannelAsync_" data-uid="EchoHub.Client.Services.ApiClient.CreateChannelAsync*"></a>
<h3 id="EchoHub_Client_Services_ApiClient_CreateChannelAsync_System_String_System_String_System_Boolean_" data-uid="EchoHub.Client.Services.ApiClient.CreateChannelAsync(System.String,System.String,System.Boolean)">
CreateChannelAsync(string, string?, bool)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Services/ApiClient.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public Task&lt;ChannelDto?&gt; CreateChannelAsync(string name, string? topic = null, bool isPublic = true)</code></pre>
</div>
<h4 class="section">Parameters</h4>
@@ -307,6 +383,8 @@ Class ApiClient <a class="header-action link-secondary" title="View source" hre
<dd></dd>
<dt><code>topic</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>isPublic</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
@@ -361,6 +439,42 @@ Class ApiClient <a class="header-action link-secondary" title="View source" hre
<a id="EchoHub_Client_Services_ApiClient_DeleteMessageAsync_" data-uid="EchoHub.Client.Services.ApiClient.DeleteMessageAsync*"></a>
<h3 id="EchoHub_Client_Services_ApiClient_DeleteMessageAsync_System_Guid_" data-uid="EchoHub.Client.Services.ApiClient.DeleteMessageAsync(System.Guid)">
DeleteMessageAsync(Guid)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Services/ApiClient.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public Task DeleteMessageAsync(Guid messageId)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>messageId</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.guid">Guid</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">Task</span></dt>
<dd></dd>
</dl>
<a id="EchoHub_Client_Services_ApiClient_Dispose_" data-uid="EchoHub.Client.Services.ApiClient.Dispose*"></a>
<h3 id="EchoHub_Client_Services_ApiClient_Dispose" data-uid="EchoHub.Client.Services.ApiClient.Dispose">
@@ -518,6 +632,44 @@ Used by EchoHubConnection for SignalR token provider.</p>
<a id="EchoHub_Client_Services_ApiClient_KickUserAsync_" data-uid="EchoHub.Client.Services.ApiClient.KickUserAsync*"></a>
<h3 id="EchoHub_Client_Services_ApiClient_KickUserAsync_System_String_System_String_" data-uid="EchoHub.Client.Services.ApiClient.KickUserAsync(System.String,System.String)">
KickUserAsync(string, string?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Services/ApiClient.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public Task KickUserAsync(string username, string? reason = null)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>username</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>reason</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">Task</span></dt>
<dd></dd>
</dl>
<a id="EchoHub_Client_Services_ApiClient_LoginAsync_" data-uid="EchoHub.Client.Services.ApiClient.LoginAsync*"></a>
<h3 id="EchoHub_Client_Services_ApiClient_LoginAsync_System_String_System_String_" data-uid="EchoHub.Client.Services.ApiClient.LoginAsync(System.String,System.String)">
@@ -587,6 +739,82 @@ Used by EchoHubConnection for SignalR token provider.</p>
<a id="EchoHub_Client_Services_ApiClient_MuteUserAsync_" data-uid="EchoHub.Client.Services.ApiClient.MuteUserAsync*"></a>
<h3 id="EchoHub_Client_Services_ApiClient_MuteUserAsync_System_String_System_Nullable_System_Int32__System_String_" data-uid="EchoHub.Client.Services.ApiClient.MuteUserAsync(System.String,System.Nullable{System.Int32},System.String)">
MuteUserAsync(string, int?, string?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Services/ApiClient.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public Task MuteUserAsync(string username, int? durationMinutes = null, string? reason = null)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>username</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>durationMinutes</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a>?</dt>
<dd></dd>
<dt><code>reason</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">Task</span></dt>
<dd></dd>
</dl>
<a id="EchoHub_Client_Services_ApiClient_NukeChannelAsync_" data-uid="EchoHub.Client.Services.ApiClient.NukeChannelAsync*"></a>
<h3 id="EchoHub_Client_Services_ApiClient_NukeChannelAsync_System_String_" data-uid="EchoHub.Client.Services.ApiClient.NukeChannelAsync(System.String)">
NukeChannelAsync(string)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Services/ApiClient.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public Task NukeChannelAsync(string channelName)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>channelName</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">Task</span></dt>
<dd></dd>
</dl>
<a id="EchoHub_Client_Services_ApiClient_RefreshTokenAsync_" data-uid="EchoHub.Client.Services.ApiClient.RefreshTokenAsync*"></a>
<h3 id="EchoHub_Client_Services_ApiClient_RefreshTokenAsync" data-uid="EchoHub.Client.Services.ApiClient.RefreshTokenAsync">
@@ -660,8 +888,8 @@ Used by EchoHubConnection for SignalR token provider.</p>
<a id="EchoHub_Client_Services_ApiClient_SendUrlAsync_" data-uid="EchoHub.Client.Services.ApiClient.SendUrlAsync*"></a>
<h3 id="EchoHub_Client_Services_ApiClient_SendUrlAsync_System_String_System_String_" data-uid="EchoHub.Client.Services.ApiClient.SendUrlAsync(System.String,System.String)">
SendUrlAsync(string, string)
<h3 id="EchoHub_Client_Services_ApiClient_SendUrlAsync_System_String_System_String_System_String_" data-uid="EchoHub.Client.Services.ApiClient.SendUrlAsync(System.String,System.String,System.String)">
SendUrlAsync(string, string, string?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Services/ApiClient.cs"><i class="bi bi-code-slash"></i></a>
</h3>
@@ -669,7 +897,7 @@ Used by EchoHubConnection for SignalR token provider.</p>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public Task&lt;MessageDto?&gt; SendUrlAsync(string channelName, string url)</code></pre>
<pre><code class="lang-csharp hljs">public Task&lt;MessageDto?&gt; SendUrlAsync(string channelName, string url, string? size = null)</code></pre>
</div>
<h4 class="section">Parameters</h4>
@@ -678,6 +906,8 @@ Used by EchoHubConnection for SignalR token provider.</p>
<dd></dd>
<dt><code>url</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>size</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
@@ -696,6 +926,78 @@ Used by EchoHubConnection for SignalR token provider.</p>
<a id="EchoHub_Client_Services_ApiClient_UnbanUserAsync_" data-uid="EchoHub.Client.Services.ApiClient.UnbanUserAsync*"></a>
<h3 id="EchoHub_Client_Services_ApiClient_UnbanUserAsync_System_String_" data-uid="EchoHub.Client.Services.ApiClient.UnbanUserAsync(System.String)">
UnbanUserAsync(string)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Services/ApiClient.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public Task UnbanUserAsync(string username)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>username</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">Task</span></dt>
<dd></dd>
</dl>
<a id="EchoHub_Client_Services_ApiClient_UnmuteUserAsync_" data-uid="EchoHub.Client.Services.ApiClient.UnmuteUserAsync*"></a>
<h3 id="EchoHub_Client_Services_ApiClient_UnmuteUserAsync_System_String_" data-uid="EchoHub.Client.Services.ApiClient.UnmuteUserAsync(System.String)">
UnmuteUserAsync(string)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Services/ApiClient.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public Task UnmuteUserAsync(string username)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>username</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">Task</span></dt>
<dd></dd>
</dl>
<a id="EchoHub_Client_Services_ApiClient_UpdateChannelTopicAsync_" data-uid="EchoHub.Client.Services.ApiClient.UpdateChannelTopicAsync*"></a>
<h3 id="EchoHub_Client_Services_ApiClient_UpdateChannelTopicAsync_System_String_System_String_" data-uid="EchoHub.Client.Services.ApiClient.UpdateChannelTopicAsync(System.String,System.String)">
@@ -810,8 +1112,8 @@ Used by EchoHubConnection for SignalR token provider.</p>
<a id="EchoHub_Client_Services_ApiClient_UploadFileAsync_" data-uid="EchoHub.Client.Services.ApiClient.UploadFileAsync*"></a>
<h3 id="EchoHub_Client_Services_ApiClient_UploadFileAsync_System_String_System_IO_Stream_System_String_" data-uid="EchoHub.Client.Services.ApiClient.UploadFileAsync(System.String,System.IO.Stream,System.String)">
UploadFileAsync(string, Stream, string)
<h3 id="EchoHub_Client_Services_ApiClient_UploadFileAsync_System_String_System_IO_Stream_System_String_System_String_" data-uid="EchoHub.Client.Services.ApiClient.UploadFileAsync(System.String,System.IO.Stream,System.String,System.String)">
UploadFileAsync(string, Stream, string, string?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Services/ApiClient.cs"><i class="bi bi-code-slash"></i></a>
</h3>
@@ -819,7 +1121,7 @@ Used by EchoHubConnection for SignalR token provider.</p>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public Task&lt;MessageDto?&gt; UploadFileAsync(string channelName, Stream fileStream, string fileName)</code></pre>
<pre><code class="lang-csharp hljs">public Task&lt;MessageDto?&gt; UploadFileAsync(string channelName, Stream fileStream, string fileName, string? size = null)</code></pre>
</div>
<h4 class="section">Parameters</h4>
@@ -830,6 +1132,8 @@ Used by EchoHubConnection for SignalR token provider.</p>
<dd></dd>
<dt><code>fileName</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>size</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
@@ -331,7 +331,7 @@ Class EchoHubConnection <a class="header-action link-secondary" title="View sou
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public Task&lt;List&lt;MessageDto&gt;&gt; GetHistoryAsync(string channelName, int count = 50)</code></pre>
<pre><code class="lang-csharp hljs">public Task&lt;List&lt;MessageDto&gt;&gt; GetHistoryAsync(string channelName, int count = 100)</code></pre>
</div>
<h4 class="section">Parameters</h4>
@@ -547,6 +547,36 @@ Class EchoHubConnection <a class="header-action link-secondary" title="View sou
<h3 id="EchoHub_Client_Services_EchoHubConnection_OnChannelNuked" data-uid="EchoHub.Client.Services.EchoHubConnection.OnChannelNuked">
OnChannelNuked
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Services/EchoHubConnection.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public event Action&lt;string&gt;? OnChannelNuked</code></pre>
</div>
<h4 class="section">Event Type</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.action-1">Action</a>&lt;<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a>&gt;</dt>
<dd></dd>
</dl>
<h3 id="EchoHub_Client_Services_EchoHubConnection_OnChannelUpdated" data-uid="EchoHub.Client.Services.EchoHubConnection.OnChannelUpdated">
OnChannelUpdated
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Services/EchoHubConnection.cs"><i class="bi bi-code-slash"></i></a>
@@ -637,6 +667,66 @@ Class EchoHubConnection <a class="header-action link-secondary" title="View sou
<h3 id="EchoHub_Client_Services_EchoHubConnection_OnForceDisconnect" data-uid="EchoHub.Client.Services.EchoHubConnection.OnForceDisconnect">
OnForceDisconnect
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Services/EchoHubConnection.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public event Action&lt;string&gt;? OnForceDisconnect</code></pre>
</div>
<h4 class="section">Event Type</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.action-1">Action</a>&lt;<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a>&gt;</dt>
<dd></dd>
</dl>
<h3 id="EchoHub_Client_Services_EchoHubConnection_OnMessageDeleted" data-uid="EchoHub.Client.Services.EchoHubConnection.OnMessageDeleted">
OnMessageDeleted
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Services/EchoHubConnection.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public event Action&lt;string, Guid&gt;? OnMessageDeleted</code></pre>
</div>
<h4 class="section">Event Type</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.action-2">Action</a>&lt;<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a>, <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.guid">Guid</a>&gt;</dt>
<dd></dd>
</dl>
<h3 id="EchoHub_Client_Services_EchoHubConnection_OnMessageReceived" data-uid="EchoHub.Client.Services.EchoHubConnection.OnMessageReceived">
OnMessageReceived
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Services/EchoHubConnection.cs"><i class="bi bi-code-slash"></i></a>
@@ -697,6 +787,36 @@ Class EchoHubConnection <a class="header-action link-secondary" title="View sou
<h3 id="EchoHub_Client_Services_EchoHubConnection_OnUserBanned" data-uid="EchoHub.Client.Services.EchoHubConnection.OnUserBanned">
OnUserBanned
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Services/EchoHubConnection.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public event Action&lt;string, string?&gt;? OnUserBanned</code></pre>
</div>
<h4 class="section">Event Type</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.action-2">Action</a>&lt;<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a>, <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a>&gt;</dt>
<dd></dd>
</dl>
<h3 id="EchoHub_Client_Services_EchoHubConnection_OnUserJoined" data-uid="EchoHub.Client.Services.EchoHubConnection.OnUserJoined">
OnUserJoined
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Services/EchoHubConnection.cs"><i class="bi bi-code-slash"></i></a>
@@ -727,6 +847,36 @@ Class EchoHubConnection <a class="header-action link-secondary" title="View sou
<h3 id="EchoHub_Client_Services_EchoHubConnection_OnUserKicked" data-uid="EchoHub.Client.Services.EchoHubConnection.OnUserKicked">
OnUserKicked
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Services/EchoHubConnection.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public event Action&lt;string, string, string?&gt;? OnUserKicked</code></pre>
</div>
<h4 class="section">Event Type</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.action-3">Action</a>&lt;<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a>, <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a>, <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a>&gt;</dt>
<dd></dd>
</dl>
<h3 id="EchoHub_Client_Services_EchoHubConnection_OnUserLeft" data-uid="EchoHub.Client.Services.EchoHubConnection.OnUserLeft">
OnUserLeft
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Services/EchoHubConnection.cs"><i class="bi bi-code-slash"></i></a>
@@ -0,0 +1,340 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Class NotificationSoundService | EchoHub Documentation </title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="title" content="Class NotificationSoundService | EchoHub Documentation ">
<link rel="icon" href="../../images/hue_icon.svg">
<link rel="stylesheet" href="../../public/docfx.min.css">
<link rel="stylesheet" href="../../public/main.css">
<meta name="docfx:navrel" content="../../toc.html">
<meta name="docfx:tocrel" content="../toc.html">
<meta name="docfx:rel" content="../../">
<meta name="docfx:docurl" content="https://github.com/HueByte/EchoHub/new/master/apiSpec/new?filename=EchoHub_Client_Services_NotificationSoundService.md&amp;value=---%0Auid%3A%20EchoHub.Client.Services.NotificationSoundService%0Asummary%3A%20&#39;*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax&#39;%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">
<meta name="loc:inThisArticle" content="In this article">
<meta name="loc:searchResultsCount" content="{count} results for &quot;{query}&quot;">
<meta name="loc:searchNoResults" content="No results for &quot;{query}&quot;">
<meta name="loc:tocFilter" content="Filter by title">
<meta name="loc:nextArticle" content="Next">
<meta name="loc:prevArticle" content="Previous">
<meta name="loc:themeLight" content="Light">
<meta name="loc:themeDark" content="Dark">
<meta name="loc:themeAuto" content="Auto">
<meta name="loc:changeTheme" content="Change theme">
<meta name="loc:copy" content="Copy">
<meta name="loc:downloadPdf" content="Download PDF">
<script type="module" src="./../../public/docfx.min.js"></script>
<script>
const theme = localStorage.getItem('theme') || 'auto'
document.documentElement.setAttribute('data-bs-theme', theme === 'auto' ? (window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light') : theme)
</script>
</head>
<body class="tex2jax_ignore" data-layout="" data-yaml-mime="ManagedReference">
<header class="bg-body border-bottom">
<nav id="autocollapse" class="navbar navbar-expand-md" role="navigation">
<div class="container-xxl flex-nowrap">
<a class="navbar-brand" href="../../index.html">
<img id="logo" class="svg" src="../../images/hue_icon.svg" alt="EchoHub">
EchoHub
</a>
<button class="btn btn-lg d-md-none border-0" type="button" data-bs-toggle="collapse" data-bs-target="#navpanel" aria-controls="navpanel" aria-expanded="false" aria-label="Toggle navigation">
<i class="bi bi-three-dots"></i>
</button>
<div class="collapse navbar-collapse" id="navpanel">
<div id="navbar">
<form class="search" role="search" id="search">
<i class="bi bi-search"></i>
<input class="form-control" id="search-query" type="search" disabled placeholder="Search" autocomplete="off" aria-label="Search">
</form>
</div>
</div>
</div>
</nav>
</header>
<main class="container-xxl">
<div class="toc-offcanvas">
<div class="offcanvas-md offcanvas-start" tabindex="-1" id="tocOffcanvas" aria-labelledby="tocOffcanvasLabel">
<div class="offcanvas-header">
<h5 class="offcanvas-title" id="tocOffcanvasLabel">Table of Contents</h5>
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" data-bs-target="#tocOffcanvas" aria-label="Close"></button>
</div>
<div class="offcanvas-body">
<nav class="toc" id="toc"></nav>
</div>
</div>
</div>
<div class="content">
<div class="actionbar">
<button class="btn btn-lg border-0 d-md-none" type="button" data-bs-toggle="offcanvas" data-bs-target="#tocOffcanvas" aria-controls="tocOffcanvas" aria-expanded="false" aria-label="Show table of contents">
<i class="bi bi-list"></i>
</button>
<nav id="breadcrumb"></nav>
</div>
<article data-uid="EchoHub.Client.Services.NotificationSoundService">
<h1 id="EchoHub_Client_Services_NotificationSoundService" data-uid="EchoHub.Client.Services.NotificationSoundService" class="text-break">
Class NotificationSoundService <a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Services/NotificationSoundService.cs"><i class="bi bi-code-slash"></i></a>
</h1>
<div class="facts text-secondary">
<dl><dt>Namespace</dt><dd><a class="xref" href="EchoHub.html">EchoHub</a>.<a class="xref" href="EchoHub.Client.html">Client</a>.<a class="xref" href="EchoHub.Client.Services.html">Services</a></dd></dl>
<dl><dt>Assembly</dt><dd>EchoHub.Client.dll</dd></dl>
</div>
<div class="markdown summary"></div>
<div class="markdown conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public class NotificationSoundService</code></pre>
</div>
<dl class="typelist inheritance">
<dt>Inheritance</dt>
<dd>
<div><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object">object</a></div>
<div><span class="xref">NotificationSoundService</span></div>
</dd>
</dl>
<dl class="typelist inheritedMembers">
<dt>Inherited Members</dt>
<dd>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.gettype">object.GetType()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.memberwiseclone">object.MemberwiseClone()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.tostring">object.ToString()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object)">object.Equals(object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object-system-object)">object.Equals(object, object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.referenceequals">object.ReferenceEquals(object, object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.gethashcode">object.GetHashCode()</a>
</div>
</dd></dl>
<h2 class="section" id="constructors">Constructors
</h2>
<a id="EchoHub_Client_Services_NotificationSoundService__ctor_" data-uid="EchoHub.Client.Services.NotificationSoundService.#ctor*"></a>
<h3 id="EchoHub_Client_Services_NotificationSoundService__ctor_EchoHub_Client_Config_NotificationConfig_" data-uid="EchoHub.Client.Services.NotificationSoundService.#ctor(EchoHub.Client.Config.NotificationConfig)">
NotificationSoundService(NotificationConfig)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Services/NotificationSoundService.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public NotificationSoundService(NotificationConfig config)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>config</code> <a class="xref" href="EchoHub.Client.Config.NotificationConfig.html">NotificationConfig</a></dt>
<dd></dd>
</dl>
<h2 class="section" id="methods">Methods
</h2>
<a id="EchoHub_Client_Services_NotificationSoundService_PlayAsync_" data-uid="EchoHub.Client.Services.NotificationSoundService.PlayAsync*"></a>
<h3 id="EchoHub_Client_Services_NotificationSoundService_PlayAsync" data-uid="EchoHub.Client.Services.NotificationSoundService.PlayAsync">
PlayAsync()
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Services/NotificationSoundService.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public Task PlayAsync()</code></pre>
</div>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">Task</span></dt>
<dd></dd>
</dl>
<a id="EchoHub_Client_Services_NotificationSoundService_PlayTestAsync_" data-uid="EchoHub.Client.Services.NotificationSoundService.PlayTestAsync*"></a>
<h3 id="EchoHub_Client_Services_NotificationSoundService_PlayTestAsync" data-uid="EchoHub.Client.Services.NotificationSoundService.PlayTestAsync">
PlayTestAsync()
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Services/NotificationSoundService.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"><p>Plays the notification sound regardless of the Enabled setting (for /test-sound).</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public Task PlayTestAsync()</code></pre>
</div>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">Task</span></dt>
<dd></dd>
</dl>
<a id="EchoHub_Client_Services_NotificationSoundService_SetEnabled_" data-uid="EchoHub.Client.Services.NotificationSoundService.SetEnabled*"></a>
<h3 id="EchoHub_Client_Services_NotificationSoundService_SetEnabled_System_Boolean_" data-uid="EchoHub.Client.Services.NotificationSoundService.SetEnabled(System.Boolean)">
SetEnabled(bool)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Services/NotificationSoundService.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public void SetEnabled(bool enabled)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>enabled</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Client_Services_NotificationSoundService_SetVolume_" data-uid="EchoHub.Client.Services.NotificationSoundService.SetVolume*"></a>
<h3 id="EchoHub_Client_Services_NotificationSoundService_SetVolume_System_Byte_" data-uid="EchoHub.Client.Services.NotificationSoundService.SetVolume(System.Byte)">
SetVolume(byte)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Services/NotificationSoundService.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public void SetVolume(byte volume)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>volume</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.byte">byte</a></dt>
<dd></dd>
</dl>
</article>
<div class="contribution d-print-none">
<a href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Services/NotificationSoundService.cs" class="edit-link">Edit this page</a>
</div>
</div>
<div class="affix">
<nav id="affix"></nav>
</div>
</main>
<div class="container-xxl search-results" id="search-results"></div>
<footer class="border-top text-secondary">
<div class="container-xxl">
<div class="flex-fill">
<div class='footer-custom'><div class='footer-inner'><span class='footer-brand'>EchoHub</span><span class='footer-sep'>&middot;</span><a href='https://github.com/HueByte/EchoHub'>GitHub</a><span class='footer-sep'>&middot;</span><a href='https://echohub.voidcube.cloud'>Website</a><span class='footer-sep'>&middot;</span><span class='footer-credit'>Built with <a href='https://dotnet.github.io/docfx'>DocFX</a></span></div></div>
</div>
</div>
</footer>
</body>
</html>
@@ -0,0 +1,213 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Class UpdateChecker | EchoHub Documentation </title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="title" content="Class UpdateChecker | EchoHub Documentation ">
<link rel="icon" href="../../images/hue_icon.svg">
<link rel="stylesheet" href="../../public/docfx.min.css">
<link rel="stylesheet" href="../../public/main.css">
<meta name="docfx:navrel" content="../../toc.html">
<meta name="docfx:tocrel" content="../toc.html">
<meta name="docfx:rel" content="../../">
<meta name="docfx:docurl" content="https://github.com/HueByte/EchoHub/new/master/apiSpec/new?filename=EchoHub_Client_Services_UpdateChecker.md&amp;value=---%0Auid%3A%20EchoHub.Client.Services.UpdateChecker%0Asummary%3A%20&#39;*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax&#39;%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">
<meta name="loc:inThisArticle" content="In this article">
<meta name="loc:searchResultsCount" content="{count} results for &quot;{query}&quot;">
<meta name="loc:searchNoResults" content="No results for &quot;{query}&quot;">
<meta name="loc:tocFilter" content="Filter by title">
<meta name="loc:nextArticle" content="Next">
<meta name="loc:prevArticle" content="Previous">
<meta name="loc:themeLight" content="Light">
<meta name="loc:themeDark" content="Dark">
<meta name="loc:themeAuto" content="Auto">
<meta name="loc:changeTheme" content="Change theme">
<meta name="loc:copy" content="Copy">
<meta name="loc:downloadPdf" content="Download PDF">
<script type="module" src="./../../public/docfx.min.js"></script>
<script>
const theme = localStorage.getItem('theme') || 'auto'
document.documentElement.setAttribute('data-bs-theme', theme === 'auto' ? (window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light') : theme)
</script>
</head>
<body class="tex2jax_ignore" data-layout="" data-yaml-mime="ManagedReference">
<header class="bg-body border-bottom">
<nav id="autocollapse" class="navbar navbar-expand-md" role="navigation">
<div class="container-xxl flex-nowrap">
<a class="navbar-brand" href="../../index.html">
<img id="logo" class="svg" src="../../images/hue_icon.svg" alt="EchoHub">
EchoHub
</a>
<button class="btn btn-lg d-md-none border-0" type="button" data-bs-toggle="collapse" data-bs-target="#navpanel" aria-controls="navpanel" aria-expanded="false" aria-label="Toggle navigation">
<i class="bi bi-three-dots"></i>
</button>
<div class="collapse navbar-collapse" id="navpanel">
<div id="navbar">
<form class="search" role="search" id="search">
<i class="bi bi-search"></i>
<input class="form-control" id="search-query" type="search" disabled placeholder="Search" autocomplete="off" aria-label="Search">
</form>
</div>
</div>
</div>
</nav>
</header>
<main class="container-xxl">
<div class="toc-offcanvas">
<div class="offcanvas-md offcanvas-start" tabindex="-1" id="tocOffcanvas" aria-labelledby="tocOffcanvasLabel">
<div class="offcanvas-header">
<h5 class="offcanvas-title" id="tocOffcanvasLabel">Table of Contents</h5>
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" data-bs-target="#tocOffcanvas" aria-label="Close"></button>
</div>
<div class="offcanvas-body">
<nav class="toc" id="toc"></nav>
</div>
</div>
</div>
<div class="content">
<div class="actionbar">
<button class="btn btn-lg border-0 d-md-none" type="button" data-bs-toggle="offcanvas" data-bs-target="#tocOffcanvas" aria-controls="tocOffcanvas" aria-expanded="false" aria-label="Show table of contents">
<i class="bi bi-list"></i>
</button>
<nav id="breadcrumb"></nav>
</div>
<article data-uid="EchoHub.Client.Services.UpdateChecker">
<h1 id="EchoHub_Client_Services_UpdateChecker" data-uid="EchoHub.Client.Services.UpdateChecker" class="text-break">
Class UpdateChecker <a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Services/UpdateChecker.cs"><i class="bi bi-code-slash"></i></a>
</h1>
<div class="facts text-secondary">
<dl><dt>Namespace</dt><dd><a class="xref" href="EchoHub.html">EchoHub</a>.<a class="xref" href="EchoHub.Client.html">Client</a>.<a class="xref" href="EchoHub.Client.Services.html">Services</a></dd></dl>
<dl><dt>Assembly</dt><dd>EchoHub.Client.dll</dd></dl>
</div>
<div class="markdown summary"></div>
<div class="markdown conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public static class UpdateChecker</code></pre>
</div>
<dl class="typelist inheritance">
<dt>Inheritance</dt>
<dd>
<div><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object">object</a></div>
<div><span class="xref">UpdateChecker</span></div>
</dd>
</dl>
<dl class="typelist inheritedMembers">
<dt>Inherited Members</dt>
<dd>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.gettype">object.GetType()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.memberwiseclone">object.MemberwiseClone()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.tostring">object.ToString()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object)">object.Equals(object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object-system-object)">object.Equals(object, object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.referenceequals">object.ReferenceEquals(object, object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.gethashcode">object.GetHashCode()</a>
</div>
</dd></dl>
<h2 class="section" id="methods">Methods
</h2>
<a id="EchoHub_Client_Services_UpdateChecker_CheckForUpdateAsync_" data-uid="EchoHub.Client.Services.UpdateChecker.CheckForUpdateAsync*"></a>
<h3 id="EchoHub_Client_Services_UpdateChecker_CheckForUpdateAsync" data-uid="EchoHub.Client.Services.UpdateChecker.CheckForUpdateAsync">
CheckForUpdateAsync()
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Services/UpdateChecker.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"><p>Checks GitHub for a newer release. Returns the new version string if one exists, or null.
Never throws — all errors are silently swallowed.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public static Task&lt;string?&gt; CheckForUpdateAsync()</code></pre>
</div>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">Task</span>&lt;<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a>&gt;</dt>
<dd></dd>
</dl>
</article>
<div class="contribution d-print-none">
<a href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/Services/UpdateChecker.cs" class="edit-link">Edit this page</a>
</div>
</div>
<div class="affix">
<nav id="affix"></nav>
</div>
</main>
<div class="container-xxl search-results" id="search-results"></div>
<footer class="border-top text-secondary">
<div class="container-xxl">
<div class="flex-fill">
<div class='footer-custom'><div class='footer-inner'><span class='footer-brand'>EchoHub</span><span class='footer-sep'>&middot;</span><a href='https://github.com/HueByte/EchoHub'>GitHub</a><span class='footer-sep'>&middot;</span><a href='https://echohub.voidcube.cloud'>Website</a><span class='footer-sep'>&middot;</span><span class='footer-credit'>Built with <a href='https://dotnet.github.io/docfx'>DocFX</a></span></div></div>
</div>
</div>
</footer>
</body>
</html>
+8
View File
@@ -102,6 +102,14 @@ Classes
<dt><a class="xref" href="EchoHub.Client.Services.EchoHubConnection.html">EchoHubConnection</a></dt>
<dd></dd>
</dl>
<dl class="jumplist">
<dt><a class="xref" href="EchoHub.Client.Services.NotificationSoundService.html">NotificationSoundService</a></dt>
<dd></dd>
</dl>
<dl class="jumplist">
<dt><a class="xref" href="EchoHub.Client.Services.UpdateChecker.html">UpdateChecker</a></dt>
<dd></dd>
</dl>
</article>
@@ -0,0 +1,554 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Class ChannelListSource | EchoHub Documentation </title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="title" content="Class ChannelListSource | EchoHub Documentation ">
<meta name="description" content="Custom list data source for colored channel list rendering. Active channel gets a &amp;gt; indicator, unread channels are bright with a count badge.">
<link rel="icon" href="../../images/hue_icon.svg">
<link rel="stylesheet" href="../../public/docfx.min.css">
<link rel="stylesheet" href="../../public/main.css">
<meta name="docfx:navrel" content="../../toc.html">
<meta name="docfx:tocrel" content="../toc.html">
<meta name="docfx:rel" content="../../">
<meta name="docfx:docurl" content="https://github.com/HueByte/EchoHub/new/master/apiSpec/new?filename=EchoHub_Client_UI_ChannelListSource.md&amp;value=---%0Auid%3A%20EchoHub.Client.UI.ChannelListSource%0Asummary%3A%20&#39;*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax&#39;%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">
<meta name="loc:inThisArticle" content="In this article">
<meta name="loc:searchResultsCount" content="{count} results for &quot;{query}&quot;">
<meta name="loc:searchNoResults" content="No results for &quot;{query}&quot;">
<meta name="loc:tocFilter" content="Filter by title">
<meta name="loc:nextArticle" content="Next">
<meta name="loc:prevArticle" content="Previous">
<meta name="loc:themeLight" content="Light">
<meta name="loc:themeDark" content="Dark">
<meta name="loc:themeAuto" content="Auto">
<meta name="loc:changeTheme" content="Change theme">
<meta name="loc:copy" content="Copy">
<meta name="loc:downloadPdf" content="Download PDF">
<script type="module" src="./../../public/docfx.min.js"></script>
<script>
const theme = localStorage.getItem('theme') || 'auto'
document.documentElement.setAttribute('data-bs-theme', theme === 'auto' ? (window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light') : theme)
</script>
</head>
<body class="tex2jax_ignore" data-layout="" data-yaml-mime="ManagedReference">
<header class="bg-body border-bottom">
<nav id="autocollapse" class="navbar navbar-expand-md" role="navigation">
<div class="container-xxl flex-nowrap">
<a class="navbar-brand" href="../../index.html">
<img id="logo" class="svg" src="../../images/hue_icon.svg" alt="EchoHub">
EchoHub
</a>
<button class="btn btn-lg d-md-none border-0" type="button" data-bs-toggle="collapse" data-bs-target="#navpanel" aria-controls="navpanel" aria-expanded="false" aria-label="Toggle navigation">
<i class="bi bi-three-dots"></i>
</button>
<div class="collapse navbar-collapse" id="navpanel">
<div id="navbar">
<form class="search" role="search" id="search">
<i class="bi bi-search"></i>
<input class="form-control" id="search-query" type="search" disabled placeholder="Search" autocomplete="off" aria-label="Search">
</form>
</div>
</div>
</div>
</nav>
</header>
<main class="container-xxl">
<div class="toc-offcanvas">
<div class="offcanvas-md offcanvas-start" tabindex="-1" id="tocOffcanvas" aria-labelledby="tocOffcanvasLabel">
<div class="offcanvas-header">
<h5 class="offcanvas-title" id="tocOffcanvasLabel">Table of Contents</h5>
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" data-bs-target="#tocOffcanvas" aria-label="Close"></button>
</div>
<div class="offcanvas-body">
<nav class="toc" id="toc"></nav>
</div>
</div>
</div>
<div class="content">
<div class="actionbar">
<button class="btn btn-lg border-0 d-md-none" type="button" data-bs-toggle="offcanvas" data-bs-target="#tocOffcanvas" aria-controls="tocOffcanvas" aria-expanded="false" aria-label="Show table of contents">
<i class="bi bi-list"></i>
</button>
<nav id="breadcrumb"></nav>
</div>
<article data-uid="EchoHub.Client.UI.ChannelListSource">
<h1 id="EchoHub_Client_UI_ChannelListSource" data-uid="EchoHub.Client.UI.ChannelListSource" class="text-break">
Class ChannelListSource <a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ChatRenderer.cs"><i class="bi bi-code-slash"></i></a>
</h1>
<div class="facts text-secondary">
<dl><dt>Namespace</dt><dd><a class="xref" href="EchoHub.html">EchoHub</a>.<a class="xref" href="EchoHub.Client.html">Client</a>.<a class="xref" href="EchoHub.Client.UI.html">UI</a></dd></dl>
<dl><dt>Assembly</dt><dd>EchoHub.Client.dll</dd></dl>
</div>
<div class="markdown summary"><p>Custom list data source for colored channel list rendering.
Active channel gets a &gt; indicator, unread channels are bright with a count badge.</p>
</div>
<div class="markdown conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public class ChannelListSource : IListDataSource, IDisposable</code></pre>
</div>
<dl class="typelist inheritance">
<dt>Inheritance</dt>
<dd>
<div><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object">object</a></div>
<div><span class="xref">ChannelListSource</span></div>
</dd>
</dl>
<dl class="typelist implements">
<dt>Implements</dt>
<dd>
<div><span class="xref">IListDataSource</span></div>
<div><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.idisposable">IDisposable</a></div>
</dd>
</dl>
<dl class="typelist inheritedMembers">
<dt>Inherited Members</dt>
<dd>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.gettype">object.GetType()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.memberwiseclone">object.MemberwiseClone()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.tostring">object.ToString()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object)">object.Equals(object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object-system-object)">object.Equals(object, object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.referenceequals">object.ReferenceEquals(object, object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.gethashcode">object.GetHashCode()</a>
</div>
</dd></dl>
<h2 class="section" id="constructors">Constructors
</h2>
<a id="EchoHub_Client_UI_ChannelListSource__ctor_" data-uid="EchoHub.Client.UI.ChannelListSource.#ctor*"></a>
<h3 id="EchoHub_Client_UI_ChannelListSource__ctor" data-uid="EchoHub.Client.UI.ChannelListSource.#ctor">
ChannelListSource()
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ChatRenderer.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public ChannelListSource()</code></pre>
</div>
<h2 class="section" id="properties">Properties
</h2>
<a id="EchoHub_Client_UI_ChannelListSource_Count_" data-uid="EchoHub.Client.UI.ChannelListSource.Count*"></a>
<h3 id="EchoHub_Client_UI_ChannelListSource_Count" data-uid="EchoHub.Client.UI.ChannelListSource.Count">
Count
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ChatRenderer.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public int Count { get; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Client_UI_ChannelListSource_MaxItemLength_" data-uid="EchoHub.Client.UI.ChannelListSource.MaxItemLength*"></a>
<h3 id="EchoHub_Client_UI_ChannelListSource_MaxItemLength" data-uid="EchoHub.Client.UI.ChannelListSource.MaxItemLength">
MaxItemLength
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ChatRenderer.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public int MaxItemLength { get; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Client_UI_ChannelListSource_SuspendCollectionChangedEvent_" data-uid="EchoHub.Client.UI.ChannelListSource.SuspendCollectionChangedEvent*"></a>
<h3 id="EchoHub_Client_UI_ChannelListSource_SuspendCollectionChangedEvent" data-uid="EchoHub.Client.UI.ChannelListSource.SuspendCollectionChangedEvent">
SuspendCollectionChangedEvent
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ChatRenderer.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public bool SuspendCollectionChangedEvent { get; set; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
<h2 class="section" id="methods">Methods
</h2>
<a id="EchoHub_Client_UI_ChannelListSource_Dispose_" data-uid="EchoHub.Client.UI.ChannelListSource.Dispose*"></a>
<h3 id="EchoHub_Client_UI_ChannelListSource_Dispose" data-uid="EchoHub.Client.UI.ChannelListSource.Dispose">
Dispose()
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ChatRenderer.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public void Dispose()</code></pre>
</div>
<a id="EchoHub_Client_UI_ChannelListSource_IsMarked_" data-uid="EchoHub.Client.UI.ChannelListSource.IsMarked*"></a>
<h3 id="EchoHub_Client_UI_ChannelListSource_IsMarked_System_Int32_" data-uid="EchoHub.Client.UI.ChannelListSource.IsMarked(System.Int32)">
IsMarked(int)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ChatRenderer.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public bool IsMarked(int item)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>item</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Client_UI_ChannelListSource_Render_" data-uid="EchoHub.Client.UI.ChannelListSource.Render*"></a>
<h3 id="EchoHub_Client_UI_ChannelListSource_Render_Terminal_Gui_Views_ListView_System_Boolean_System_Int32_System_Int32_System_Int32_System_Int32_System_Int32_" data-uid="EchoHub.Client.UI.ChannelListSource.Render(Terminal.Gui.Views.ListView,System.Boolean,System.Int32,System.Int32,System.Int32,System.Int32,System.Int32)">
Render(ListView, bool, int, int, int, int, int)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ChatRenderer.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public void Render(ListView listView, bool selected, int item, int col, int row, int width, int viewportX = 0)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>listView</code> <span class="xref">ListView</span></dt>
<dd></dd>
<dt><code>selected</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
<dt><code>item</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></dt>
<dd></dd>
<dt><code>col</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></dt>
<dd></dd>
<dt><code>row</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></dt>
<dd></dd>
<dt><code>width</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></dt>
<dd></dd>
<dt><code>viewportX</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Client_UI_ChannelListSource_SetMark_" data-uid="EchoHub.Client.UI.ChannelListSource.SetMark*"></a>
<h3 id="EchoHub_Client_UI_ChannelListSource_SetMark_System_Int32_System_Boolean_" data-uid="EchoHub.Client.UI.ChannelListSource.SetMark(System.Int32,System.Boolean)">
SetMark(int, bool)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ChatRenderer.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public void SetMark(int item, bool value)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>item</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></dt>
<dd></dd>
<dt><code>value</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Client_UI_ChannelListSource_ToList_" data-uid="EchoHub.Client.UI.ChannelListSource.ToList*"></a>
<h3 id="EchoHub_Client_UI_ChannelListSource_ToList" data-uid="EchoHub.Client.UI.ChannelListSource.ToList">
ToList()
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ChatRenderer.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public IList ToList()</code></pre>
</div>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">IList</span></dt>
<dd></dd>
</dl>
<a id="EchoHub_Client_UI_ChannelListSource_Update_" data-uid="EchoHub.Client.UI.ChannelListSource.Update*"></a>
<h3 id="EchoHub_Client_UI_ChannelListSource_Update_System_Collections_Generic_List_System_String__System_Collections_Generic_Dictionary_System_String_System_Int32__System_String_" data-uid="EchoHub.Client.UI.ChannelListSource.Update(System.Collections.Generic.List{System.String},System.Collections.Generic.Dictionary{System.String,System.Int32},System.String)">
Update(List&lt;string&gt;, Dictionary&lt;string, int&gt;, string)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ChatRenderer.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public void Update(List&lt;string&gt; channels, Dictionary&lt;string, int&gt; unread, string activeChannel)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>channels</code> <span class="xref">List</span>&lt;<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a>&gt;</dt>
<dd></dd>
<dt><code>unread</code> <span class="xref">Dictionary</span>&lt;<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a>, <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a>&gt;</dt>
<dd></dd>
<dt><code>activeChannel</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h2 class="section" id="events">Events
</h2>
<h3 id="EchoHub_Client_UI_ChannelListSource_CollectionChanged" data-uid="EchoHub.Client.UI.ChannelListSource.CollectionChanged">
CollectionChanged
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ChatRenderer.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public event NotifyCollectionChangedEventHandler? CollectionChanged</code></pre>
</div>
<h4 class="section">Event Type</h4>
<dl class="parameters">
<dt><span class="xref">NotifyCollectionChangedEventHandler</span></dt>
<dd></dd>
</dl>
</article>
<div class="contribution d-print-none">
<a href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ChatRenderer.cs" class="edit-link">Edit this page</a>
</div>
</div>
<div class="affix">
<nav id="affix"></nav>
</div>
</main>
<div class="container-xxl search-results" id="search-results"></div>
<footer class="border-top text-secondary">
<div class="container-xxl">
<div class="flex-fill">
<div class='footer-custom'><div class='footer-inner'><span class='footer-brand'>EchoHub</span><span class='footer-sep'>&middot;</span><a href='https://github.com/HueByte/EchoHub'>GitHub</a><span class='footer-sep'>&middot;</span><a href='https://echohub.voidcube.cloud'>Website</a><span class='footer-sep'>&middot;</span><span class='footer-credit'>Built with <a href='https://dotnet.github.io/docfx'>DocFX</a></span></div></div>
</div>
</div>
</footer>
</body>
</html>
@@ -154,6 +154,186 @@ Class ChatColors <a class="header-action link-secondary" title="View source" hr
<h3 id="EchoHub_Client_UI_ChatColors_EmbedBorderAttr" data-uid="EchoHub.Client.UI.ChatColors.EmbedBorderAttr">
EmbedBorderAttr
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ChatRenderer.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public static readonly Attribute EmbedBorderAttr</code></pre>
</div>
<h4 class="section">Field Value</h4>
<dl class="parameters">
<dt><span class="xref">Attribute</span></dt>
<dd></dd>
</dl>
<h3 id="EchoHub_Client_UI_ChatColors_EmbedDescAttr" data-uid="EchoHub.Client.UI.ChatColors.EmbedDescAttr">
EmbedDescAttr
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ChatRenderer.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public static readonly Attribute EmbedDescAttr</code></pre>
</div>
<h4 class="section">Field Value</h4>
<dl class="parameters">
<dt><span class="xref">Attribute</span></dt>
<dd></dd>
</dl>
<h3 id="EchoHub_Client_UI_ChatColors_EmbedTitleAttr" data-uid="EchoHub.Client.UI.ChatColors.EmbedTitleAttr">
EmbedTitleAttr
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ChatRenderer.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public static readonly Attribute EmbedTitleAttr</code></pre>
</div>
<h4 class="section">Field Value</h4>
<dl class="parameters">
<dt><span class="xref">Attribute</span></dt>
<dd></dd>
</dl>
<h3 id="EchoHub_Client_UI_ChatColors_EmbedUrlAttr" data-uid="EchoHub.Client.UI.ChatColors.EmbedUrlAttr">
EmbedUrlAttr
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ChatRenderer.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public static readonly Attribute EmbedUrlAttr</code></pre>
</div>
<h4 class="section">Field Value</h4>
<dl class="parameters">
<dt><span class="xref">Attribute</span></dt>
<dd></dd>
</dl>
<h3 id="EchoHub_Client_UI_ChatColors_MentionHighlightAttr" data-uid="EchoHub.Client.UI.ChatColors.MentionHighlightAttr">
MentionHighlightAttr
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ChatRenderer.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public static readonly Attribute MentionHighlightAttr</code></pre>
</div>
<h4 class="section">Field Value</h4>
<dl class="parameters">
<dt><span class="xref">Attribute</span></dt>
<dd></dd>
</dl>
<h3 id="EchoHub_Client_UI_ChatColors_MentionTextAttr" data-uid="EchoHub.Client.UI.ChatColors.MentionTextAttr">
MentionTextAttr
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ChatRenderer.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public static readonly Attribute MentionTextAttr</code></pre>
</div>
<h4 class="section">Field Value</h4>
<dl class="parameters">
<dt><span class="xref">Attribute</span></dt>
<dd></dd>
</dl>
<h3 id="EchoHub_Client_UI_ChatColors_SystemAttr" data-uid="EchoHub.Client.UI.ChatColors.SystemAttr">
SystemAttr
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ChatRenderer.cs"><i class="bi bi-code-slash"></i></a>
@@ -213,6 +393,50 @@ Class ChatColors <a class="header-action link-secondary" title="View source" hr
<h2 class="section" id="methods">Methods
</h2>
<a id="EchoHub_Client_UI_ChatColors_SplitMentions_" data-uid="EchoHub.Client.UI.ChatColors.SplitMentions*"></a>
<h3 id="EchoHub_Client_UI_ChatColors_SplitMentions_System_String_System_Nullable_Terminal_Gui_Drawing_Attribute__" data-uid="EchoHub.Client.UI.ChatColors.SplitMentions(System.String,System.Nullable{Terminal.Gui.Drawing.Attribute})">
SplitMentions(string, Attribute?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ChatRenderer.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"><p>Split text around @mentions, giving each @word the MentionTextAttr accent color.
Non-mention text uses the provided default color.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public static List&lt;ChatSegment&gt; SplitMentions(string text, Attribute? defaultColor = null)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>text</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>defaultColor</code> <span class="xref">Attribute</span>?</dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">List</span>&lt;<a class="xref" href="EchoHub.Client.UI.ChatSegment.html">ChatSegment</a>&gt;</dt>
<dd></dd>
</dl>
</article>
+143 -7
View File
@@ -216,6 +216,68 @@ Class ChatLine <a class="header-action link-secondary" title="View source" href
</h2>
<a id="EchoHub_Client_UI_ChatLine_IsMention_" data-uid="EchoHub.Client.UI.ChatLine.IsMention*"></a>
<h3 id="EchoHub_Client_UI_ChatLine_IsMention" data-uid="EchoHub.Client.UI.ChatLine.IsMention">
IsMention
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ChatRenderer.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public bool IsMention { get; set; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Client_UI_ChatLine_MessageId_" data-uid="EchoHub.Client.UI.ChatLine.MessageId*"></a>
<h3 id="EchoHub_Client_UI_ChatLine_MessageId" data-uid="EchoHub.Client.UI.ChatLine.MessageId">
MessageId
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ChatRenderer.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public Guid? MessageId { get; set; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.guid">Guid</a>?</dt>
<dd></dd>
</dl>
<a id="EchoHub_Client_UI_ChatLine_Segments_" data-uid="EchoHub.Client.UI.ChatLine.Segments*"></a>
<h3 id="EchoHub_Client_UI_ChatLine_Segments" data-uid="EchoHub.Client.UI.ChatLine.Segments">
@@ -282,25 +344,25 @@ Class ChatLine <a class="header-action link-secondary" title="View source" href
</h2>
<a id="EchoHub_Client_UI_ChatLine_FromAnsi_" data-uid="EchoHub.Client.UI.ChatLine.FromAnsi*"></a>
<a id="EchoHub_Client_UI_ChatLine_FromColoredText_" data-uid="EchoHub.Client.UI.ChatLine.FromColoredText*"></a>
<h3 id="EchoHub_Client_UI_ChatLine_FromAnsi_System_String_System_Nullable_Terminal_Gui_Drawing_Attribute__" data-uid="EchoHub.Client.UI.ChatLine.FromAnsi(System.String,System.Nullable{Terminal.Gui.Drawing.Attribute})">
FromAnsi(string, Attribute?)
<h3 id="EchoHub_Client_UI_ChatLine_FromColoredText_System_String_System_Nullable_Terminal_Gui_Drawing_Attribute__" data-uid="EchoHub.Client.UI.ChatLine.FromColoredText(System.String,System.Nullable{Terminal.Gui.Drawing.Attribute})">
FromColoredText(string, Attribute?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ChatRenderer.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"><p>Parse a string containing ANSI 24-bit color escape codes into colored segments.
Format: \x1b[38;2;R;G;Bm (foreground color), \x1b[0m (reset)</p>
<div class="markdown level1 summary"><p>Parse a string containing printable color tags into colored segments.
Format: {F:RRGGBB} (foreground), {B:RRGGBB} (background), {X} (reset).</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public static ChatLine FromAnsi(string ansiText, Attribute? defaultAttr = null)</code></pre>
<pre><code class="lang-csharp hljs">public static ChatLine FromColoredText(string text, Attribute? defaultAttr = null)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>ansiText</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dt><code>text</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>defaultAttr</code> <span class="xref">Attribute</span>?</dt>
<dd></dd>
@@ -322,6 +384,80 @@ Format: \x1b[38;2;R;G;Bm (foreground color), \x1b[0m (reset)</p>
<a id="EchoHub_Client_UI_ChatLine_HasColorTags_" data-uid="EchoHub.Client.UI.ChatLine.HasColorTags*"></a>
<h3 id="EchoHub_Client_UI_ChatLine_HasColorTags_System_String_" data-uid="EchoHub.Client.UI.ChatLine.HasColorTags(System.String)">
HasColorTags(string)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ChatRenderer.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"><p>Returns true if a line contains printable color tags.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public static bool HasColorTags(string text)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>text</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Client_UI_ChatLine_StripColorTags_" data-uid="EchoHub.Client.UI.ChatLine.StripColorTags*"></a>
<h3 id="EchoHub_Client_UI_ChatLine_StripColorTags_System_String_" data-uid="EchoHub.Client.UI.ChatLine.StripColorTags(System.String)">
StripColorTags(string)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ChatRenderer.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"><p>Remove all color tags from text, returning only the visible characters.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public static string StripColorTags(string text)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>text</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Client_UI_ChatLine_ToString_" data-uid="EchoHub.Client.UI.ChatLine.ToString*"></a>
<h3 id="EchoHub_Client_UI_ChatLine_ToString" data-uid="EchoHub.Client.UI.ChatLine.ToString">
@@ -6,7 +6,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="title" content="Class ChatListSource | EchoHub Documentation ">
<meta name="description" content="Custom list data source for chat messages with per-character coloring.">
<meta name="description" content="Custom list data source for chat messages with per-segment coloring.">
<link rel="icon" href="../../images/hue_icon.svg">
<link rel="stylesheet" href="../../public/docfx.min.css">
<link rel="stylesheet" href="../../public/main.css">
@@ -97,7 +97,7 @@ Class ChatListSource <a class="header-action link-secondary" title="View source
<dl><dt>Assembly</dt><dd>EchoHub.Client.dll</dd></dl>
</div>
<div class="markdown summary"><p>Custom list data source for chat messages with per-character coloring.</p>
<div class="markdown summary"><p>Custom list data source for chat messages with per-segment coloring.</p>
</div>
<div class="markdown conceptual"></div>
@@ -182,8 +182,8 @@ Class CreateChannelResult <a class="header-action link-secondary" title="View s
<a id="EchoHub_Client_UI_CreateChannelResult__ctor_" data-uid="EchoHub.Client.UI.CreateChannelResult.#ctor*"></a>
<h3 id="EchoHub_Client_UI_CreateChannelResult__ctor_System_String_System_String_" data-uid="EchoHub.Client.UI.CreateChannelResult.#ctor(System.String,System.String)">
CreateChannelResult(string, string?)
<h3 id="EchoHub_Client_UI_CreateChannelResult__ctor_System_String_System_String_System_Boolean_" data-uid="EchoHub.Client.UI.CreateChannelResult.#ctor(System.String,System.String,System.Boolean)">
CreateChannelResult(string, string?, bool)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/CreateChannelDialog.cs"><i class="bi bi-code-slash"></i></a>
</h3>
@@ -191,7 +191,7 @@ Class CreateChannelResult <a class="header-action link-secondary" title="View s
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public CreateChannelResult(string Name, string? Topic)</code></pre>
<pre><code class="lang-csharp hljs">public CreateChannelResult(string Name, string? Topic, bool IsPublic)</code></pre>
</div>
<h4 class="section">Parameters</h4>
@@ -200,6 +200,8 @@ Class CreateChannelResult <a class="header-action link-secondary" title="View s
<dd></dd>
<dt><code>Topic</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>IsPublic</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
@@ -248,6 +250,37 @@ Class CreateChannelResult <a class="header-action link-secondary" title="View s
<a id="EchoHub_Client_UI_CreateChannelResult_IsPublic_" data-uid="EchoHub.Client.UI.CreateChannelResult.IsPublic*"></a>
<h3 id="EchoHub_Client_UI_CreateChannelResult_IsPublic" data-uid="EchoHub.Client.UI.CreateChannelResult.IsPublic">
IsPublic
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/CreateChannelDialog.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public bool IsPublic { get; init; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Client_UI_CreateChannelResult_Name_" data-uid="EchoHub.Client.UI.CreateChannelResult.Name*"></a>
<h3 id="EchoHub_Client_UI_CreateChannelResult_Name" data-uid="EchoHub.Client.UI.CreateChannelResult.Name">
@@ -316,8 +349,8 @@ Class CreateChannelResult <a class="header-action link-secondary" title="View s
<a id="EchoHub_Client_UI_CreateChannelResult_Deconstruct_" data-uid="EchoHub.Client.UI.CreateChannelResult.Deconstruct*"></a>
<h3 id="EchoHub_Client_UI_CreateChannelResult_Deconstruct_System_String__System_String__" data-uid="EchoHub.Client.UI.CreateChannelResult.Deconstruct(System.String@,System.String@)">
Deconstruct(out string, out string?)
<h3 id="EchoHub_Client_UI_CreateChannelResult_Deconstruct_System_String__System_String__System_Boolean__" data-uid="EchoHub.Client.UI.CreateChannelResult.Deconstruct(System.String@,System.String@,System.Boolean@)">
Deconstruct(out string, out string?, out bool)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/CreateChannelDialog.cs"><i class="bi bi-code-slash"></i></a>
</h3>
@@ -325,7 +358,7 @@ Class CreateChannelResult <a class="header-action link-secondary" title="View s
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public void Deconstruct(out string Name, out string? Topic)</code></pre>
<pre><code class="lang-csharp hljs">public void Deconstruct(out string Name, out string? Topic, out bool IsPublic)</code></pre>
</div>
<h4 class="section">Parameters</h4>
@@ -334,6 +367,8 @@ Class CreateChannelResult <a class="header-action link-secondary" title="View s
<dd></dd>
<dt><code>Topic</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>IsPublic</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
@@ -0,0 +1,221 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Class EmojiHelper | EchoHub Documentation </title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="title" content="Class EmojiHelper | EchoHub Documentation ">
<meta name="description" content="Converts emoji grapheme clusters to text shortcodes for safe TUI rendering. Terminal width calculations for emoji are unreliable across different terminals, so we replace them with fixed-width ASCII shortcodes for display only.">
<link rel="icon" href="../../images/hue_icon.svg">
<link rel="stylesheet" href="../../public/docfx.min.css">
<link rel="stylesheet" href="../../public/main.css">
<meta name="docfx:navrel" content="../../toc.html">
<meta name="docfx:tocrel" content="../toc.html">
<meta name="docfx:rel" content="../../">
<meta name="docfx:docurl" content="https://github.com/HueByte/EchoHub/new/master/apiSpec/new?filename=EchoHub_Client_UI_EmojiHelper.md&amp;value=---%0Auid%3A%20EchoHub.Client.UI.EmojiHelper%0Asummary%3A%20&#39;*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax&#39;%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">
<meta name="loc:inThisArticle" content="In this article">
<meta name="loc:searchResultsCount" content="{count} results for &quot;{query}&quot;">
<meta name="loc:searchNoResults" content="No results for &quot;{query}&quot;">
<meta name="loc:tocFilter" content="Filter by title">
<meta name="loc:nextArticle" content="Next">
<meta name="loc:prevArticle" content="Previous">
<meta name="loc:themeLight" content="Light">
<meta name="loc:themeDark" content="Dark">
<meta name="loc:themeAuto" content="Auto">
<meta name="loc:changeTheme" content="Change theme">
<meta name="loc:copy" content="Copy">
<meta name="loc:downloadPdf" content="Download PDF">
<script type="module" src="./../../public/docfx.min.js"></script>
<script>
const theme = localStorage.getItem('theme') || 'auto'
document.documentElement.setAttribute('data-bs-theme', theme === 'auto' ? (window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light') : theme)
</script>
</head>
<body class="tex2jax_ignore" data-layout="" data-yaml-mime="ManagedReference">
<header class="bg-body border-bottom">
<nav id="autocollapse" class="navbar navbar-expand-md" role="navigation">
<div class="container-xxl flex-nowrap">
<a class="navbar-brand" href="../../index.html">
<img id="logo" class="svg" src="../../images/hue_icon.svg" alt="EchoHub">
EchoHub
</a>
<button class="btn btn-lg d-md-none border-0" type="button" data-bs-toggle="collapse" data-bs-target="#navpanel" aria-controls="navpanel" aria-expanded="false" aria-label="Toggle navigation">
<i class="bi bi-three-dots"></i>
</button>
<div class="collapse navbar-collapse" id="navpanel">
<div id="navbar">
<form class="search" role="search" id="search">
<i class="bi bi-search"></i>
<input class="form-control" id="search-query" type="search" disabled placeholder="Search" autocomplete="off" aria-label="Search">
</form>
</div>
</div>
</div>
</nav>
</header>
<main class="container-xxl">
<div class="toc-offcanvas">
<div class="offcanvas-md offcanvas-start" tabindex="-1" id="tocOffcanvas" aria-labelledby="tocOffcanvasLabel">
<div class="offcanvas-header">
<h5 class="offcanvas-title" id="tocOffcanvasLabel">Table of Contents</h5>
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" data-bs-target="#tocOffcanvas" aria-label="Close"></button>
</div>
<div class="offcanvas-body">
<nav class="toc" id="toc"></nav>
</div>
</div>
</div>
<div class="content">
<div class="actionbar">
<button class="btn btn-lg border-0 d-md-none" type="button" data-bs-toggle="offcanvas" data-bs-target="#tocOffcanvas" aria-controls="tocOffcanvas" aria-expanded="false" aria-label="Show table of contents">
<i class="bi bi-list"></i>
</button>
<nav id="breadcrumb"></nav>
</div>
<article data-uid="EchoHub.Client.UI.EmojiHelper">
<h1 id="EchoHub_Client_UI_EmojiHelper" data-uid="EchoHub.Client.UI.EmojiHelper" class="text-break">
Class EmojiHelper <a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/EmojiHelper.cs"><i class="bi bi-code-slash"></i></a>
</h1>
<div class="facts text-secondary">
<dl><dt>Namespace</dt><dd><a class="xref" href="EchoHub.html">EchoHub</a>.<a class="xref" href="EchoHub.Client.html">Client</a>.<a class="xref" href="EchoHub.Client.UI.html">UI</a></dd></dl>
<dl><dt>Assembly</dt><dd>EchoHub.Client.dll</dd></dl>
</div>
<div class="markdown summary"><p>Converts emoji grapheme clusters to text shortcodes for safe TUI rendering.
Terminal width calculations for emoji are unreliable across different terminals,
so we replace them with fixed-width ASCII shortcodes for display only.</p>
</div>
<div class="markdown conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public static class EmojiHelper</code></pre>
</div>
<dl class="typelist inheritance">
<dt>Inheritance</dt>
<dd>
<div><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object">object</a></div>
<div><span class="xref">EmojiHelper</span></div>
</dd>
</dl>
<dl class="typelist inheritedMembers">
<dt>Inherited Members</dt>
<dd>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.gettype">object.GetType()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.memberwiseclone">object.MemberwiseClone()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.tostring">object.ToString()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object)">object.Equals(object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object-system-object)">object.Equals(object, object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.referenceequals">object.ReferenceEquals(object, object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.gethashcode">object.GetHashCode()</a>
</div>
</dd></dl>
<h2 class="section" id="methods">Methods
</h2>
<a id="EchoHub_Client_UI_EmojiHelper_ReplaceEmoji_" data-uid="EchoHub.Client.UI.EmojiHelper.ReplaceEmoji*"></a>
<h3 id="EchoHub_Client_UI_EmojiHelper_ReplaceEmoji_System_String_" data-uid="EchoHub.Client.UI.EmojiHelper.ReplaceEmoji(System.String)">
ReplaceEmoji(string)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/EmojiHelper.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"><p>Replace emoji graphemes in the text with :shortcode: equivalents.
Non-emoji text passes through unchanged.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public static string ReplaceEmoji(string text)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>text</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
</article>
<div class="contribution d-print-none">
<a href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/EmojiHelper.cs" class="edit-link">Edit this page</a>
</div>
</div>
<div class="affix">
<nav id="affix"></nav>
</div>
</main>
<div class="container-xxl search-results" id="search-results"></div>
<footer class="border-top text-secondary">
<div class="container-xxl">
<div class="flex-fill">
<div class='footer-custom'><div class='footer-inner'><span class='footer-brand'>EchoHub</span><span class='footer-sep'>&middot;</span><a href='https://github.com/HueByte/EchoHub'>GitHub</a><span class='footer-sep'>&middot;</span><a href='https://echohub.voidcube.cloud'>Website</a><span class='footer-sep'>&middot;</span><span class='footer-credit'>Built with <a href='https://dotnet.github.io/docfx'>DocFX</a></span></div></div>
</div>
</div>
</footer>
</body>
</html>
@@ -1027,6 +1027,70 @@ Call after theme changes to refresh colors.</p>
<a id="EchoHub_Client_UI_MainWindow_ClearChannelMessages_" data-uid="EchoHub.Client.UI.MainWindow.ClearChannelMessages*"></a>
<h3 id="EchoHub_Client_UI_MainWindow_ClearChannelMessages_System_String_" data-uid="EchoHub.Client.UI.MainWindow.ClearChannelMessages(System.String)">
ClearChannelMessages(string)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/MainWindow.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"><p>Clear all messages from a specific channel.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public void ClearChannelMessages(string channelName)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>channelName</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Client_UI_MainWindow_EnsureChannelInList_" data-uid="EchoHub.Client.UI.MainWindow.EnsureChannelInList*"></a>
<h3 id="EchoHub_Client_UI_MainWindow_EnsureChannelInList_System_String_" data-uid="EchoHub.Client.UI.MainWindow.EnsureChannelInList(System.String)">
EnsureChannelInList(string)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/MainWindow.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"><p>Ensure a channel exists in the left panel list (used for private channels joined via /join).</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public void EnsureChannelInList(string channelName)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>channelName</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Client_UI_MainWindow_FocusInput_" data-uid="EchoHub.Client.UI.MainWindow.FocusInput*"></a>
<h3 id="EchoHub_Client_UI_MainWindow_FocusInput" data-uid="EchoHub.Client.UI.MainWindow.FocusInput">
@@ -1147,6 +1211,72 @@ Call after theme changes to refresh colors.</p>
<a id="EchoHub_Client_UI_MainWindow_RemoveChannel_" data-uid="EchoHub.Client.UI.MainWindow.RemoveChannel*"></a>
<h3 id="EchoHub_Client_UI_MainWindow_RemoveChannel_System_String_" data-uid="EchoHub.Client.UI.MainWindow.RemoveChannel(System.String)">
RemoveChannel(string)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/MainWindow.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"><p>Remove a channel from the left panel list.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public void RemoveChannel(string channelName)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>channelName</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Client_UI_MainWindow_RemoveMessage_" data-uid="EchoHub.Client.UI.MainWindow.RemoveMessage*"></a>
<h3 id="EchoHub_Client_UI_MainWindow_RemoveMessage_System_String_System_Guid_" data-uid="EchoHub.Client.UI.MainWindow.RemoveMessage(System.String,System.Guid)">
RemoveMessage(string, Guid)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/MainWindow.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"><p>Remove all lines associated with a specific message ID.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public void RemoveMessage(string channelName, Guid messageId)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>channelName</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>messageId</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.guid">Guid</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Client_UI_MainWindow_SetChannelTopic_" data-uid="EchoHub.Client.UI.MainWindow.SetChannelTopic*"></a>
<h3 id="EchoHub_Client_UI_MainWindow_SetChannelTopic_System_String_System_String_" data-uid="EchoHub.Client.UI.MainWindow.SetChannelTopic(System.String,System.String)">
@@ -1309,6 +1439,65 @@ Call after theme changes to refresh colors.</p>
<a id="EchoHub_Client_UI_MainWindow_ToggleUsersPanel_" data-uid="EchoHub.Client.UI.MainWindow.ToggleUsersPanel*"></a>
<h3 id="EchoHub_Client_UI_MainWindow_ToggleUsersPanel" data-uid="EchoHub.Client.UI.MainWindow.ToggleUsersPanel">
ToggleUsersPanel()
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/MainWindow.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"><p>Toggle the online users panel visibility (F2).</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public void ToggleUsersPanel()</code></pre>
</div>
<a id="EchoHub_Client_UI_MainWindow_UpdateOnlineUsers_" data-uid="EchoHub.Client.UI.MainWindow.UpdateOnlineUsers*"></a>
<h3 id="EchoHub_Client_UI_MainWindow_UpdateOnlineUsers_System_Collections_Generic_List_EchoHub_Core_DTOs_UserPresenceDto__" data-uid="EchoHub.Client.UI.MainWindow.UpdateOnlineUsers(System.Collections.Generic.List{EchoHub.Core.DTOs.UserPresenceDto})">
UpdateOnlineUsers(List&lt;UserPresenceDto&gt;)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/MainWindow.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"><p>Update the online users list display.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public void UpdateOnlineUsers(List&lt;UserPresenceDto&gt; users)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>users</code> <span class="xref">List</span>&lt;<a class="xref" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ProfileDtos.cs">UserPresenceDto</a>&gt;</dt>
<dd></dd>
</dl>
<a id="EchoHub_Client_UI_MainWindow_UpdateStatusBar_" data-uid="EchoHub.Client.UI.MainWindow.UpdateStatusBar*"></a>
<h3 id="EchoHub_Client_UI_MainWindow_UpdateStatusBar_System_String_" data-uid="EchoHub.Client.UI.MainWindow.UpdateStatusBar(System.String)">
@@ -1439,6 +1628,37 @@ Call after theme changes to refresh colors.</p>
<h3 id="EchoHub_Client_UI_MainWindow_OnDeleteChannelRequested" data-uid="EchoHub.Client.UI.MainWindow.OnDeleteChannelRequested">
OnDeleteChannelRequested
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/MainWindow.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"><p>Fired when the user requests to delete the current channel.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public event Action? OnDeleteChannelRequested</code></pre>
</div>
<h4 class="section">Event Type</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.action">Action</a></dt>
<dd></dd>
</dl>
<h3 id="EchoHub_Client_UI_MainWindow_OnDisconnectRequested" data-uid="EchoHub.Client.UI.MainWindow.OnDisconnectRequested">
OnDisconnectRequested
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/MainWindow.cs"><i class="bi bi-code-slash"></i></a>
@@ -182,8 +182,8 @@ Class ProfileEditDialog <a class="header-action link-secondary" title="View sou
<a id="EchoHub_Client_UI_ProfileEditDialog_Show_" data-uid="EchoHub.Client.UI.ProfileEditDialog.Show*"></a>
<h3 id="EchoHub_Client_UI_ProfileEditDialog_Show_Terminal_Gui_App_IApplication_System_String_System_String_System_String_" data-uid="EchoHub.Client.UI.ProfileEditDialog.Show(Terminal.Gui.App.IApplication,System.String,System.String,System.String)">
Show(IApplication, string?, string?, string?)
<h3 id="EchoHub_Client_UI_ProfileEditDialog_Show_Terminal_Gui_App_IApplication_System_String_System_String_System_String_System_Boolean_System_Byte_" data-uid="EchoHub.Client.UI.ProfileEditDialog.Show(Terminal.Gui.App.IApplication,System.String,System.String,System.String,System.Boolean,System.Byte)">
Show(IApplication, string?, string?, string?, bool, byte)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ProfileEditDialog.cs"><i class="bi bi-code-slash"></i></a>
</h3>
@@ -192,7 +192,7 @@ Class ProfileEditDialog <a class="header-action link-secondary" title="View sou
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public static ProfileEditResult? Show(IApplication app, string? currentDisplayName, string? currentBio, string? currentColor)</code></pre>
<pre><code class="lang-csharp hljs">public static ProfileEditResult? Show(IApplication app, string? currentDisplayName, string? currentBio, string? currentColor, bool notificationSoundEnabled = false, byte notificationVolume = 30)</code></pre>
</div>
<h4 class="section">Parameters</h4>
@@ -205,6 +205,10 @@ Class ProfileEditDialog <a class="header-action link-secondary" title="View sou
<dd></dd>
<dt><code>currentColor</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>notificationSoundEnabled</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
<dt><code>notificationVolume</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.byte">byte</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
@@ -183,8 +183,8 @@ Class ProfileEditResult <a class="header-action link-secondary" title="View sou
<a id="EchoHub_Client_UI_ProfileEditResult__ctor_" data-uid="EchoHub.Client.UI.ProfileEditResult.#ctor*"></a>
<h3 id="EchoHub_Client_UI_ProfileEditResult__ctor_System_String_System_String_System_String_" data-uid="EchoHub.Client.UI.ProfileEditResult.#ctor(System.String,System.String,System.String)">
ProfileEditResult(string?, string?, string?)
<h3 id="EchoHub_Client_UI_ProfileEditResult__ctor_System_String_System_String_System_String_System_String_System_Nullable_System_Boolean__System_Nullable_System_Byte__" data-uid="EchoHub.Client.UI.ProfileEditResult.#ctor(System.String,System.String,System.String,System.String,System.Nullable{System.Boolean},System.Nullable{System.Byte})">
ProfileEditResult(string?, string?, string?, string?, bool?, byte?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ProfileEditDialog.cs"><i class="bi bi-code-slash"></i></a>
</h3>
@@ -193,7 +193,7 @@ Class ProfileEditResult <a class="header-action link-secondary" title="View sou
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public ProfileEditResult(string? DisplayName, string? Bio, string? NicknameColor)</code></pre>
<pre><code class="lang-csharp hljs">public ProfileEditResult(string? DisplayName, string? Bio, string? NicknameColor, string? AvatarPath, bool? NotificationSoundEnabled, byte? NotificationVolume)</code></pre>
</div>
<h4 class="section">Parameters</h4>
@@ -204,6 +204,12 @@ Class ProfileEditResult <a class="header-action link-secondary" title="View sou
<dd></dd>
<dt><code>NicknameColor</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>AvatarPath</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>NotificationSoundEnabled</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a>?</dt>
<dd></dd>
<dt><code>NotificationVolume</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.byte">byte</a>?</dt>
<dd></dd>
</dl>
@@ -221,6 +227,37 @@ Class ProfileEditResult <a class="header-action link-secondary" title="View sou
</h2>
<a id="EchoHub_Client_UI_ProfileEditResult_AvatarPath_" data-uid="EchoHub.Client.UI.ProfileEditResult.AvatarPath*"></a>
<h3 id="EchoHub_Client_UI_ProfileEditResult_AvatarPath" data-uid="EchoHub.Client.UI.ProfileEditResult.AvatarPath">
AvatarPath
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ProfileEditDialog.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public string? AvatarPath { get; init; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Client_UI_ProfileEditResult_Bio_" data-uid="EchoHub.Client.UI.ProfileEditResult.Bio*"></a>
<h3 id="EchoHub_Client_UI_ProfileEditResult_Bio" data-uid="EchoHub.Client.UI.ProfileEditResult.Bio">
@@ -345,14 +382,10 @@ Class ProfileEditResult <a class="header-action link-secondary" title="View sou
<h2 class="section" id="methods">Methods
</h2>
<a id="EchoHub_Client_UI_ProfileEditResult_NotificationSoundEnabled_" data-uid="EchoHub.Client.UI.ProfileEditResult.NotificationSoundEnabled*"></a>
<a id="EchoHub_Client_UI_ProfileEditResult_Deconstruct_" data-uid="EchoHub.Client.UI.ProfileEditResult.Deconstruct*"></a>
<h3 id="EchoHub_Client_UI_ProfileEditResult_Deconstruct_System_String__System_String__System_String__" data-uid="EchoHub.Client.UI.ProfileEditResult.Deconstruct(System.String@,System.String@,System.String@)">
Deconstruct(out string?, out string?, out string?)
<h3 id="EchoHub_Client_UI_ProfileEditResult_NotificationSoundEnabled" data-uid="EchoHub.Client.UI.ProfileEditResult.NotificationSoundEnabled">
NotificationSoundEnabled
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ProfileEditDialog.cs"><i class="bi bi-code-slash"></i></a>
</h3>
@@ -360,7 +393,73 @@ Class ProfileEditResult <a class="header-action link-secondary" title="View sou
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public void Deconstruct(out string? DisplayName, out string? Bio, out string? NicknameColor)</code></pre>
<pre><code class="lang-csharp hljs">public bool? NotificationSoundEnabled { get; init; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a>?</dt>
<dd></dd>
</dl>
<a id="EchoHub_Client_UI_ProfileEditResult_NotificationVolume_" data-uid="EchoHub.Client.UI.ProfileEditResult.NotificationVolume*"></a>
<h3 id="EchoHub_Client_UI_ProfileEditResult_NotificationVolume" data-uid="EchoHub.Client.UI.ProfileEditResult.NotificationVolume">
NotificationVolume
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ProfileEditDialog.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public byte? NotificationVolume { get; init; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.byte">byte</a>?</dt>
<dd></dd>
</dl>
<h2 class="section" id="methods">Methods
</h2>
<a id="EchoHub_Client_UI_ProfileEditResult_Deconstruct_" data-uid="EchoHub.Client.UI.ProfileEditResult.Deconstruct*"></a>
<h3 id="EchoHub_Client_UI_ProfileEditResult_Deconstruct_System_String__System_String__System_String__System_String__System_Nullable_System_Boolean___System_Nullable_System_Byte___" data-uid="EchoHub.Client.UI.ProfileEditResult.Deconstruct(System.String@,System.String@,System.String@,System.String@,System.Nullable{System.Boolean}@,System.Nullable{System.Byte}@)">
Deconstruct(out string?, out string?, out string?, out string?, out bool?, out byte?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ProfileEditDialog.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public void Deconstruct(out string? DisplayName, out string? Bio, out string? NicknameColor, out string? AvatarPath, out bool? NotificationSoundEnabled, out byte? NotificationVolume)</code></pre>
</div>
<h4 class="section">Parameters</h4>
@@ -371,6 +470,12 @@ Class ProfileEditResult <a class="header-action link-secondary" title="View sou
<dd></dd>
<dt><code>NicknameColor</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>AvatarPath</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>NotificationSoundEnabled</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a>?</dt>
<dd></dd>
<dt><code>NotificationVolume</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.byte">byte</a>?</dt>
<dd></dd>
</dl>
@@ -0,0 +1,549 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Class UserListSource | EchoHub Documentation </title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="title" content="Class UserListSource | EchoHub Documentation ">
<meta name="description" content="Custom list data source for the online users panel with per-user nickname colors.">
<link rel="icon" href="../../images/hue_icon.svg">
<link rel="stylesheet" href="../../public/docfx.min.css">
<link rel="stylesheet" href="../../public/main.css">
<meta name="docfx:navrel" content="../../toc.html">
<meta name="docfx:tocrel" content="../toc.html">
<meta name="docfx:rel" content="../../">
<meta name="docfx:docurl" content="https://github.com/HueByte/EchoHub/new/master/apiSpec/new?filename=EchoHub_Client_UI_UserListSource.md&amp;value=---%0Auid%3A%20EchoHub.Client.UI.UserListSource%0Asummary%3A%20&#39;*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax&#39;%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">
<meta name="loc:inThisArticle" content="In this article">
<meta name="loc:searchResultsCount" content="{count} results for &quot;{query}&quot;">
<meta name="loc:searchNoResults" content="No results for &quot;{query}&quot;">
<meta name="loc:tocFilter" content="Filter by title">
<meta name="loc:nextArticle" content="Next">
<meta name="loc:prevArticle" content="Previous">
<meta name="loc:themeLight" content="Light">
<meta name="loc:themeDark" content="Dark">
<meta name="loc:themeAuto" content="Auto">
<meta name="loc:changeTheme" content="Change theme">
<meta name="loc:copy" content="Copy">
<meta name="loc:downloadPdf" content="Download PDF">
<script type="module" src="./../../public/docfx.min.js"></script>
<script>
const theme = localStorage.getItem('theme') || 'auto'
document.documentElement.setAttribute('data-bs-theme', theme === 'auto' ? (window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light') : theme)
</script>
</head>
<body class="tex2jax_ignore" data-layout="" data-yaml-mime="ManagedReference">
<header class="bg-body border-bottom">
<nav id="autocollapse" class="navbar navbar-expand-md" role="navigation">
<div class="container-xxl flex-nowrap">
<a class="navbar-brand" href="../../index.html">
<img id="logo" class="svg" src="../../images/hue_icon.svg" alt="EchoHub">
EchoHub
</a>
<button class="btn btn-lg d-md-none border-0" type="button" data-bs-toggle="collapse" data-bs-target="#navpanel" aria-controls="navpanel" aria-expanded="false" aria-label="Toggle navigation">
<i class="bi bi-three-dots"></i>
</button>
<div class="collapse navbar-collapse" id="navpanel">
<div id="navbar">
<form class="search" role="search" id="search">
<i class="bi bi-search"></i>
<input class="form-control" id="search-query" type="search" disabled placeholder="Search" autocomplete="off" aria-label="Search">
</form>
</div>
</div>
</div>
</nav>
</header>
<main class="container-xxl">
<div class="toc-offcanvas">
<div class="offcanvas-md offcanvas-start" tabindex="-1" id="tocOffcanvas" aria-labelledby="tocOffcanvasLabel">
<div class="offcanvas-header">
<h5 class="offcanvas-title" id="tocOffcanvasLabel">Table of Contents</h5>
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" data-bs-target="#tocOffcanvas" aria-label="Close"></button>
</div>
<div class="offcanvas-body">
<nav class="toc" id="toc"></nav>
</div>
</div>
</div>
<div class="content">
<div class="actionbar">
<button class="btn btn-lg border-0 d-md-none" type="button" data-bs-toggle="offcanvas" data-bs-target="#tocOffcanvas" aria-controls="tocOffcanvas" aria-expanded="false" aria-label="Show table of contents">
<i class="bi bi-list"></i>
</button>
<nav id="breadcrumb"></nav>
</div>
<article data-uid="EchoHub.Client.UI.UserListSource">
<h1 id="EchoHub_Client_UI_UserListSource" data-uid="EchoHub.Client.UI.UserListSource" class="text-break">
Class UserListSource <a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ChatRenderer.cs"><i class="bi bi-code-slash"></i></a>
</h1>
<div class="facts text-secondary">
<dl><dt>Namespace</dt><dd><a class="xref" href="EchoHub.html">EchoHub</a>.<a class="xref" href="EchoHub.Client.html">Client</a>.<a class="xref" href="EchoHub.Client.UI.html">UI</a></dd></dl>
<dl><dt>Assembly</dt><dd>EchoHub.Client.dll</dd></dl>
</div>
<div class="markdown summary"><p>Custom list data source for the online users panel with per-user nickname colors.</p>
</div>
<div class="markdown conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public class UserListSource : IListDataSource, IDisposable</code></pre>
</div>
<dl class="typelist inheritance">
<dt>Inheritance</dt>
<dd>
<div><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object">object</a></div>
<div><span class="xref">UserListSource</span></div>
</dd>
</dl>
<dl class="typelist implements">
<dt>Implements</dt>
<dd>
<div><span class="xref">IListDataSource</span></div>
<div><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.idisposable">IDisposable</a></div>
</dd>
</dl>
<dl class="typelist inheritedMembers">
<dt>Inherited Members</dt>
<dd>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.gettype">object.GetType()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.memberwiseclone">object.MemberwiseClone()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.tostring">object.ToString()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object)">object.Equals(object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object-system-object)">object.Equals(object, object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.referenceequals">object.ReferenceEquals(object, object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.gethashcode">object.GetHashCode()</a>
</div>
</dd></dl>
<h2 class="section" id="constructors">Constructors
</h2>
<a id="EchoHub_Client_UI_UserListSource__ctor_" data-uid="EchoHub.Client.UI.UserListSource.#ctor*"></a>
<h3 id="EchoHub_Client_UI_UserListSource__ctor" data-uid="EchoHub.Client.UI.UserListSource.#ctor">
UserListSource()
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ChatRenderer.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public UserListSource()</code></pre>
</div>
<h2 class="section" id="properties">Properties
</h2>
<a id="EchoHub_Client_UI_UserListSource_Count_" data-uid="EchoHub.Client.UI.UserListSource.Count*"></a>
<h3 id="EchoHub_Client_UI_UserListSource_Count" data-uid="EchoHub.Client.UI.UserListSource.Count">
Count
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ChatRenderer.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public int Count { get; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Client_UI_UserListSource_MaxItemLength_" data-uid="EchoHub.Client.UI.UserListSource.MaxItemLength*"></a>
<h3 id="EchoHub_Client_UI_UserListSource_MaxItemLength" data-uid="EchoHub.Client.UI.UserListSource.MaxItemLength">
MaxItemLength
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ChatRenderer.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public int MaxItemLength { get; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Client_UI_UserListSource_SuspendCollectionChangedEvent_" data-uid="EchoHub.Client.UI.UserListSource.SuspendCollectionChangedEvent*"></a>
<h3 id="EchoHub_Client_UI_UserListSource_SuspendCollectionChangedEvent" data-uid="EchoHub.Client.UI.UserListSource.SuspendCollectionChangedEvent">
SuspendCollectionChangedEvent
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ChatRenderer.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public bool SuspendCollectionChangedEvent { get; set; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
<h2 class="section" id="methods">Methods
</h2>
<a id="EchoHub_Client_UI_UserListSource_Dispose_" data-uid="EchoHub.Client.UI.UserListSource.Dispose*"></a>
<h3 id="EchoHub_Client_UI_UserListSource_Dispose" data-uid="EchoHub.Client.UI.UserListSource.Dispose">
Dispose()
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ChatRenderer.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public void Dispose()</code></pre>
</div>
<a id="EchoHub_Client_UI_UserListSource_IsMarked_" data-uid="EchoHub.Client.UI.UserListSource.IsMarked*"></a>
<h3 id="EchoHub_Client_UI_UserListSource_IsMarked_System_Int32_" data-uid="EchoHub.Client.UI.UserListSource.IsMarked(System.Int32)">
IsMarked(int)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ChatRenderer.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public bool IsMarked(int item)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>item</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Client_UI_UserListSource_Render_" data-uid="EchoHub.Client.UI.UserListSource.Render*"></a>
<h3 id="EchoHub_Client_UI_UserListSource_Render_Terminal_Gui_Views_ListView_System_Boolean_System_Int32_System_Int32_System_Int32_System_Int32_System_Int32_" data-uid="EchoHub.Client.UI.UserListSource.Render(Terminal.Gui.Views.ListView,System.Boolean,System.Int32,System.Int32,System.Int32,System.Int32,System.Int32)">
Render(ListView, bool, int, int, int, int, int)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ChatRenderer.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public void Render(ListView listView, bool selected, int item, int col, int row, int width, int viewportX = 0)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>listView</code> <span class="xref">ListView</span></dt>
<dd></dd>
<dt><code>selected</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
<dt><code>item</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></dt>
<dd></dd>
<dt><code>col</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></dt>
<dd></dd>
<dt><code>row</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></dt>
<dd></dd>
<dt><code>width</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></dt>
<dd></dd>
<dt><code>viewportX</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Client_UI_UserListSource_SetMark_" data-uid="EchoHub.Client.UI.UserListSource.SetMark*"></a>
<h3 id="EchoHub_Client_UI_UserListSource_SetMark_System_Int32_System_Boolean_" data-uid="EchoHub.Client.UI.UserListSource.SetMark(System.Int32,System.Boolean)">
SetMark(int, bool)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ChatRenderer.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public void SetMark(int item, bool value)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>item</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></dt>
<dd></dd>
<dt><code>value</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Client_UI_UserListSource_ToList_" data-uid="EchoHub.Client.UI.UserListSource.ToList*"></a>
<h3 id="EchoHub_Client_UI_UserListSource_ToList" data-uid="EchoHub.Client.UI.UserListSource.ToList">
ToList()
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ChatRenderer.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public IList ToList()</code></pre>
</div>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">IList</span></dt>
<dd></dd>
</dl>
<a id="EchoHub_Client_UI_UserListSource_Update_" data-uid="EchoHub.Client.UI.UserListSource.Update*"></a>
<h3 id="EchoHub_Client_UI_UserListSource_Update_System_Collections_Generic_List_System_ValueTuple_System_String_System_Nullable_Terminal_Gui_Drawing_Attribute____" data-uid="EchoHub.Client.UI.UserListSource.Update(System.Collections.Generic.List{System.ValueTuple{System.String,System.Nullable{Terminal.Gui.Drawing.Attribute}}})">
Update(List&lt;(string Text, Attribute? NameColor)&gt;)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ChatRenderer.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public void Update(List&lt;(string Text, Attribute? NameColor)&gt; users)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>users</code> <span class="xref">List</span>&lt;(<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.valuetuple-system.string,system.nullable-terminal.gui.drawing.attribute--.text">Text</a>, <span class="xref">Attribute</span>? <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.valuetuple-system.string,system.nullable-terminal.gui.drawing.attribute--.namecolor">NameColor</a>)&gt;</dt>
<dd></dd>
</dl>
<h2 class="section" id="events">Events
</h2>
<h3 id="EchoHub_Client_UI_UserListSource_CollectionChanged" data-uid="EchoHub.Client.UI.UserListSource.CollectionChanged">
CollectionChanged
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ChatRenderer.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public event NotifyCollectionChangedEventHandler? CollectionChanged</code></pre>
</div>
<h4 class="section">Event Type</h4>
<dl class="parameters">
<dt><span class="xref">NotifyCollectionChangedEventHandler</span></dt>
<dd></dd>
</dl>
</article>
<div class="contribution d-print-none">
<a href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Client/UI/ChatRenderer.cs" class="edit-link">Edit this page</a>
</div>
</div>
<div class="affix">
<nav id="affix"></nav>
</div>
</main>
<div class="container-xxl search-results" id="search-results"></div>
<footer class="border-top text-secondary">
<div class="container-xxl">
<div class="flex-fill">
<div class='footer-custom'><div class='footer-inner'><span class='footer-brand'>EchoHub</span><span class='footer-sep'>&middot;</span><a href='https://github.com/HueByte/EchoHub'>GitHub</a><span class='footer-sep'>&middot;</span><a href='https://echohub.voidcube.cloud'>Website</a><span class='footer-sep'>&middot;</span><span class='footer-credit'>Built with <a href='https://dotnet.github.io/docfx'>DocFX</a></span></div></div>
</div>
</div>
</footer>
</body>
</html>
+19 -1
View File
@@ -94,6 +94,12 @@
<h3 id="classes">
Classes
</h3>
<dl class="jumplist">
<dt><a class="xref" href="EchoHub.Client.UI.ChannelListSource.html">ChannelListSource</a></dt>
<dd><p>Custom list data source for colored channel list rendering.
Active channel gets a &gt; indicator, unread channels are bright with a count badge.</p>
</dd>
</dl>
<dl class="jumplist">
<dt><a class="xref" href="EchoHub.Client.UI.ChatColors.html">ChatColors</a></dt>
<dd><p>Shared color attributes for chat rendering (timestamps, system messages).</p>
@@ -106,7 +112,7 @@ Classes
</dl>
<dl class="jumplist">
<dt><a class="xref" href="EchoHub.Client.UI.ChatListSource.html">ChatListSource</a></dt>
<dd><p>Custom list data source for chat messages with per-character coloring.</p>
<dd><p>Custom list data source for chat messages with per-segment coloring.</p>
</dd>
</dl>
<dl class="jumplist">
@@ -138,6 +144,13 @@ Includes a saved servers selector when saved servers are available.</p>
<dt><a class="xref" href="EchoHub.Client.UI.CreateChannelResult.html">CreateChannelResult</a></dt>
<dd></dd>
</dl>
<dl class="jumplist">
<dt><a class="xref" href="EchoHub.Client.UI.EmojiHelper.html">EmojiHelper</a></dt>
<dd><p>Converts emoji grapheme clusters to text shortcodes for safe TUI rendering.
Terminal width calculations for emoji are unreliable across different terminals,
so we replace them with fixed-width ASCII shortcodes for display only.</p>
</dd>
</dl>
<dl class="jumplist">
<dt><a class="xref" href="EchoHub.Client.UI.MainWindow.html">MainWindow</a></dt>
<dd><p>Main Terminal.Gui window for the EchoHub chat client.</p>
@@ -167,6 +180,11 @@ Shows Edit Profile / Set Status buttons when viewing own profile.</p>
<dl class="jumplist">
<dt><a class="xref" href="EchoHub.Client.UI.StatusDialogResult.html">StatusDialogResult</a></dt>
<dd><p>Result returned from the status dialog.</p>
</dd>
</dl>
<dl class="jumplist">
<dt><a class="xref" href="EchoHub.Client.UI.UserListSource.html">UserListSource</a></dt>
<dd><p>Custom list data source for the online users panel with per-user nickname colors.</p>
</dd>
</dl>
<h3 id="enums">
@@ -183,6 +183,36 @@ Class HubConstants <a class="header-action link-secondary" title="View source"
<h3 id="EchoHub_Core_Constants_HubConstants_AsciiArtHeightHalfBlock" data-uid="EchoHub.Core.Constants.HubConstants.AsciiArtHeightHalfBlock">
AsciiArtHeightHalfBlock
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/Constants/HubConstants.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public const int AsciiArtHeightHalfBlock = 80</code></pre>
</div>
<h4 class="section">Field Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></dt>
<dd></dd>
</dl>
<h3 id="EchoHub_Core_Constants_HubConstants_AsciiArtWidth" data-uid="EchoHub.Core.Constants.HubConstants.AsciiArtWidth">
AsciiArtWidth
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/Constants/HubConstants.cs"><i class="bi bi-code-slash"></i></a>
@@ -282,7 +312,127 @@ Class HubConstants <a class="header-action link-secondary" title="View source"
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public const int DefaultHistoryCount = 50</code></pre>
<pre><code class="lang-csharp hljs">public const int DefaultHistoryCount = 100</code></pre>
</div>
<h4 class="section">Field Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></dt>
<dd></dd>
</dl>
<h3 id="EchoHub_Core_Constants_HubConstants_EmbedFetchTimeoutSeconds" data-uid="EchoHub.Core.Constants.HubConstants.EmbedFetchTimeoutSeconds">
EmbedFetchTimeoutSeconds
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/Constants/HubConstants.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public const int EmbedFetchTimeoutSeconds = 5</code></pre>
</div>
<h4 class="section">Field Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></dt>
<dd></dd>
</dl>
<h3 id="EchoHub_Core_Constants_HubConstants_EmbedMaxDescriptionLength" data-uid="EchoHub.Core.Constants.HubConstants.EmbedMaxDescriptionLength">
EmbedMaxDescriptionLength
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/Constants/HubConstants.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public const int EmbedMaxDescriptionLength = 500</code></pre>
</div>
<h4 class="section">Field Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></dt>
<dd></dd>
</dl>
<h3 id="EchoHub_Core_Constants_HubConstants_EmbedMaxHtmlBytes" data-uid="EchoHub.Core.Constants.HubConstants.EmbedMaxHtmlBytes">
EmbedMaxHtmlBytes
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/Constants/HubConstants.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public const int EmbedMaxHtmlBytes = 65536</code></pre>
</div>
<h4 class="section">Field Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></dt>
<dd></dd>
</dl>
<h3 id="EchoHub_Core_Constants_HubConstants_EmbedMaxUrlsPerMessage" data-uid="EchoHub.Core.Constants.HubConstants.EmbedMaxUrlsPerMessage">
EmbedMaxUrlsPerMessage
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/Constants/HubConstants.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public const int EmbedMaxUrlsPerMessage = 3</code></pre>
</div>
@@ -333,6 +483,36 @@ Class HubConstants <a class="header-action link-secondary" title="View source"
<h3 id="EchoHub_Core_Constants_HubConstants_MaxConsecutiveNewlines" data-uid="EchoHub.Core.Constants.HubConstants.MaxConsecutiveNewlines">
MaxConsecutiveNewlines
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/Constants/HubConstants.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public const int MaxConsecutiveNewlines = 1</code></pre>
</div>
<h4 class="section">Field Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></dt>
<dd></dd>
</dl>
<h3 id="EchoHub_Core_Constants_HubConstants_MaxFileSizeBytes" data-uid="EchoHub.Core.Constants.HubConstants.MaxFileSizeBytes">
MaxFileSizeBytes
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/Constants/HubConstants.cs"><i class="bi bi-code-slash"></i></a>
@@ -393,6 +573,36 @@ Class HubConstants <a class="header-action link-secondary" title="View source"
<h3 id="EchoHub_Core_Constants_HubConstants_MaxMessageNewlines" data-uid="EchoHub.Core.Constants.HubConstants.MaxMessageNewlines">
MaxMessageNewlines
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/Constants/HubConstants.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public const int MaxMessageNewlines = 30</code></pre>
</div>
<h4 class="section">Field Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></dt>
<dd></dd>
</dl>
</article>
<div class="contribution d-print-none">
@@ -120,6 +120,80 @@ Interface IChatBroadcaster <a class="header-action link-secondary" title="View
</h2>
<a id="EchoHub_Core_Contracts_IChatBroadcaster_ForceDisconnectUserAsync_" data-uid="EchoHub.Core.Contracts.IChatBroadcaster.ForceDisconnectUserAsync*"></a>
<h3 id="EchoHub_Core_Contracts_IChatBroadcaster_ForceDisconnectUserAsync_System_Collections_Generic_List_System_String__System_String_" data-uid="EchoHub.Core.Contracts.IChatBroadcaster.ForceDisconnectUserAsync(System.Collections.Generic.List{System.String},System.String)">
ForceDisconnectUserAsync(List&lt;string&gt;, string)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/Contracts/IChatBroadcaster.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">Task ForceDisconnectUserAsync(List&lt;string&gt; connectionIds, string reason)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>connectionIds</code> <span class="xref">List</span>&lt;<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a>&gt;</dt>
<dd></dd>
<dt><code>reason</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">Task</span></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_Contracts_IChatBroadcaster_SendChannelNukedAsync_" data-uid="EchoHub.Core.Contracts.IChatBroadcaster.SendChannelNukedAsync*"></a>
<h3 id="EchoHub_Core_Contracts_IChatBroadcaster_SendChannelNukedAsync_System_String_" data-uid="EchoHub.Core.Contracts.IChatBroadcaster.SendChannelNukedAsync(System.String)">
SendChannelNukedAsync(string)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/Contracts/IChatBroadcaster.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">Task SendChannelNukedAsync(string channelName)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>channelName</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">Task</span></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_Contracts_IChatBroadcaster_SendChannelUpdatedAsync_" data-uid="EchoHub.Core.Contracts.IChatBroadcaster.SendChannelUpdatedAsync*"></a>
<h3 id="EchoHub_Core_Contracts_IChatBroadcaster_SendChannelUpdatedAsync_EchoHub_Core_DTOs_ChannelDto_System_String_" data-uid="EchoHub.Core.Contracts.IChatBroadcaster.SendChannelUpdatedAsync(EchoHub.Core.DTOs.ChannelDto,System.String)">
@@ -196,6 +270,44 @@ Interface IChatBroadcaster <a class="header-action link-secondary" title="View
<a id="EchoHub_Core_Contracts_IChatBroadcaster_SendMessageDeletedAsync_" data-uid="EchoHub.Core.Contracts.IChatBroadcaster.SendMessageDeletedAsync*"></a>
<h3 id="EchoHub_Core_Contracts_IChatBroadcaster_SendMessageDeletedAsync_System_String_System_Guid_" data-uid="EchoHub.Core.Contracts.IChatBroadcaster.SendMessageDeletedAsync(System.String,System.Guid)">
SendMessageDeletedAsync(string, Guid)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/Contracts/IChatBroadcaster.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">Task SendMessageDeletedAsync(string channelName, Guid messageId)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>channelName</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>messageId</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.guid">Guid</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">Task</span></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_Contracts_IChatBroadcaster_SendMessageToChannelAsync_" data-uid="EchoHub.Core.Contracts.IChatBroadcaster.SendMessageToChannelAsync*"></a>
<h3 id="EchoHub_Core_Contracts_IChatBroadcaster_SendMessageToChannelAsync_System_String_EchoHub_Core_DTOs_MessageDto_" data-uid="EchoHub.Core.Contracts.IChatBroadcaster.SendMessageToChannelAsync(System.String,EchoHub.Core.DTOs.MessageDto)">
@@ -234,6 +346,44 @@ Interface IChatBroadcaster <a class="header-action link-secondary" title="View
<a id="EchoHub_Core_Contracts_IChatBroadcaster_SendUserBannedAsync_" data-uid="EchoHub.Core.Contracts.IChatBroadcaster.SendUserBannedAsync*"></a>
<h3 id="EchoHub_Core_Contracts_IChatBroadcaster_SendUserBannedAsync_System_String_System_String_" data-uid="EchoHub.Core.Contracts.IChatBroadcaster.SendUserBannedAsync(System.String,System.String)">
SendUserBannedAsync(string, string?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/Contracts/IChatBroadcaster.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">Task SendUserBannedAsync(string username, string? reason)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>username</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>reason</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">Task</span></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_Contracts_IChatBroadcaster_SendUserJoinedAsync_" data-uid="EchoHub.Core.Contracts.IChatBroadcaster.SendUserJoinedAsync*"></a>
<h3 id="EchoHub_Core_Contracts_IChatBroadcaster_SendUserJoinedAsync_System_String_System_String_System_String_" data-uid="EchoHub.Core.Contracts.IChatBroadcaster.SendUserJoinedAsync(System.String,System.String,System.String)">
@@ -274,6 +424,46 @@ Interface IChatBroadcaster <a class="header-action link-secondary" title="View
<a id="EchoHub_Core_Contracts_IChatBroadcaster_SendUserKickedAsync_" data-uid="EchoHub.Core.Contracts.IChatBroadcaster.SendUserKickedAsync*"></a>
<h3 id="EchoHub_Core_Contracts_IChatBroadcaster_SendUserKickedAsync_System_String_System_String_System_String_" data-uid="EchoHub.Core.Contracts.IChatBroadcaster.SendUserKickedAsync(System.String,System.String,System.String)">
SendUserKickedAsync(string, string, string?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/Contracts/IChatBroadcaster.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">Task SendUserKickedAsync(string channelName, string username, string? reason)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>channelName</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>username</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>reason</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">Task</span></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_Contracts_IChatBroadcaster_SendUserLeftAsync_" data-uid="EchoHub.Core.Contracts.IChatBroadcaster.SendUserLeftAsync*"></a>
<h3 id="EchoHub_Core_Contracts_IChatBroadcaster_SendUserLeftAsync_System_String_System_String_" data-uid="EchoHub.Core.Contracts.IChatBroadcaster.SendUserLeftAsync(System.String,System.String)">
@@ -121,6 +121,42 @@ Interface IEchoHubClient <a class="header-action link-secondary" title="View so
</h2>
<a id="EchoHub_Core_Contracts_IEchoHubClient_ChannelNuked_" data-uid="EchoHub.Core.Contracts.IEchoHubClient.ChannelNuked*"></a>
<h3 id="EchoHub_Core_Contracts_IEchoHubClient_ChannelNuked_System_String_" data-uid="EchoHub.Core.Contracts.IEchoHubClient.ChannelNuked(System.String)">
ChannelNuked(string)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/Contracts/IEchoHubClient.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">Task ChannelNuked(string channelName)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>channelName</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">Task</span></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_Contracts_IEchoHubClient_ChannelUpdated_" data-uid="EchoHub.Core.Contracts.IEchoHubClient.ChannelUpdated*"></a>
<h3 id="EchoHub_Core_Contracts_IEchoHubClient_ChannelUpdated_EchoHub_Core_DTOs_ChannelDto_" data-uid="EchoHub.Core.Contracts.IEchoHubClient.ChannelUpdated(EchoHub.Core.DTOs.ChannelDto)">
@@ -193,6 +229,80 @@ Interface IEchoHubClient <a class="header-action link-secondary" title="View so
<a id="EchoHub_Core_Contracts_IEchoHubClient_ForceDisconnect_" data-uid="EchoHub.Core.Contracts.IEchoHubClient.ForceDisconnect*"></a>
<h3 id="EchoHub_Core_Contracts_IEchoHubClient_ForceDisconnect_System_String_" data-uid="EchoHub.Core.Contracts.IEchoHubClient.ForceDisconnect(System.String)">
ForceDisconnect(string)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/Contracts/IEchoHubClient.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">Task ForceDisconnect(string reason)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>reason</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">Task</span></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_Contracts_IEchoHubClient_MessageDeleted_" data-uid="EchoHub.Core.Contracts.IEchoHubClient.MessageDeleted*"></a>
<h3 id="EchoHub_Core_Contracts_IEchoHubClient_MessageDeleted_System_String_System_Guid_" data-uid="EchoHub.Core.Contracts.IEchoHubClient.MessageDeleted(System.String,System.Guid)">
MessageDeleted(string, Guid)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/Contracts/IEchoHubClient.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">Task MessageDeleted(string channelName, Guid messageId)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>channelName</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>messageId</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.guid">Guid</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">Task</span></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_Contracts_IEchoHubClient_ReceiveMessage_" data-uid="EchoHub.Core.Contracts.IEchoHubClient.ReceiveMessage*"></a>
<h3 id="EchoHub_Core_Contracts_IEchoHubClient_ReceiveMessage_EchoHub_Core_DTOs_MessageDto_" data-uid="EchoHub.Core.Contracts.IEchoHubClient.ReceiveMessage(EchoHub.Core.DTOs.MessageDto)">
@@ -229,6 +339,44 @@ Interface IEchoHubClient <a class="header-action link-secondary" title="View so
<a id="EchoHub_Core_Contracts_IEchoHubClient_UserBanned_" data-uid="EchoHub.Core.Contracts.IEchoHubClient.UserBanned*"></a>
<h3 id="EchoHub_Core_Contracts_IEchoHubClient_UserBanned_System_String_System_String_" data-uid="EchoHub.Core.Contracts.IEchoHubClient.UserBanned(System.String,System.String)">
UserBanned(string, string?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/Contracts/IEchoHubClient.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">Task UserBanned(string username, string? reason)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>username</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>reason</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">Task</span></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_Contracts_IEchoHubClient_UserJoined_" data-uid="EchoHub.Core.Contracts.IEchoHubClient.UserJoined*"></a>
<h3 id="EchoHub_Core_Contracts_IEchoHubClient_UserJoined_System_String_System_String_" data-uid="EchoHub.Core.Contracts.IEchoHubClient.UserJoined(System.String,System.String)">
@@ -267,6 +415,46 @@ Interface IEchoHubClient <a class="header-action link-secondary" title="View so
<a id="EchoHub_Core_Contracts_IEchoHubClient_UserKicked_" data-uid="EchoHub.Core.Contracts.IEchoHubClient.UserKicked*"></a>
<h3 id="EchoHub_Core_Contracts_IEchoHubClient_UserKicked_System_String_System_String_System_String_" data-uid="EchoHub.Core.Contracts.IEchoHubClient.UserKicked(System.String,System.String,System.String)">
UserKicked(string, string, string?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/Contracts/IEchoHubClient.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">Task UserKicked(string channelName, string username, string? reason)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>channelName</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>username</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>reason</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">Task</span></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_Contracts_IEchoHubClient_UserLeft_" data-uid="EchoHub.Core.Contracts.IEchoHubClient.UserLeft*"></a>
<h3 id="EchoHub_Core_Contracts_IEchoHubClient_UserLeft_System_String_System_String_" data-uid="EchoHub.Core.Contracts.IEchoHubClient.UserLeft(System.String,System.String)">
@@ -0,0 +1,625 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Class AssignRoleRequest | EchoHub Documentation </title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="title" content="Class AssignRoleRequest | EchoHub Documentation ">
<link rel="icon" href="../../images/hue_icon.svg">
<link rel="stylesheet" href="../../public/docfx.min.css">
<link rel="stylesheet" href="../../public/main.css">
<meta name="docfx:navrel" content="../../toc.html">
<meta name="docfx:tocrel" content="../toc.html">
<meta name="docfx:rel" content="../../">
<meta name="docfx:docurl" content="https://github.com/HueByte/EchoHub/new/master/apiSpec/new?filename=EchoHub_Core_DTOs_AssignRoleRequest.md&amp;value=---%0Auid%3A%20EchoHub.Core.DTOs.AssignRoleRequest%0Asummary%3A%20&#39;*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax&#39;%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">
<meta name="loc:inThisArticle" content="In this article">
<meta name="loc:searchResultsCount" content="{count} results for &quot;{query}&quot;">
<meta name="loc:searchNoResults" content="No results for &quot;{query}&quot;">
<meta name="loc:tocFilter" content="Filter by title">
<meta name="loc:nextArticle" content="Next">
<meta name="loc:prevArticle" content="Previous">
<meta name="loc:themeLight" content="Light">
<meta name="loc:themeDark" content="Dark">
<meta name="loc:themeAuto" content="Auto">
<meta name="loc:changeTheme" content="Change theme">
<meta name="loc:copy" content="Copy">
<meta name="loc:downloadPdf" content="Download PDF">
<script type="module" src="./../../public/docfx.min.js"></script>
<script>
const theme = localStorage.getItem('theme') || 'auto'
document.documentElement.setAttribute('data-bs-theme', theme === 'auto' ? (window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light') : theme)
</script>
</head>
<body class="tex2jax_ignore" data-layout="" data-yaml-mime="ManagedReference">
<header class="bg-body border-bottom">
<nav id="autocollapse" class="navbar navbar-expand-md" role="navigation">
<div class="container-xxl flex-nowrap">
<a class="navbar-brand" href="../../index.html">
<img id="logo" class="svg" src="../../images/hue_icon.svg" alt="EchoHub">
EchoHub
</a>
<button class="btn btn-lg d-md-none border-0" type="button" data-bs-toggle="collapse" data-bs-target="#navpanel" aria-controls="navpanel" aria-expanded="false" aria-label="Toggle navigation">
<i class="bi bi-three-dots"></i>
</button>
<div class="collapse navbar-collapse" id="navpanel">
<div id="navbar">
<form class="search" role="search" id="search">
<i class="bi bi-search"></i>
<input class="form-control" id="search-query" type="search" disabled placeholder="Search" autocomplete="off" aria-label="Search">
</form>
</div>
</div>
</div>
</nav>
</header>
<main class="container-xxl">
<div class="toc-offcanvas">
<div class="offcanvas-md offcanvas-start" tabindex="-1" id="tocOffcanvas" aria-labelledby="tocOffcanvasLabel">
<div class="offcanvas-header">
<h5 class="offcanvas-title" id="tocOffcanvasLabel">Table of Contents</h5>
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" data-bs-target="#tocOffcanvas" aria-label="Close"></button>
</div>
<div class="offcanvas-body">
<nav class="toc" id="toc"></nav>
</div>
</div>
</div>
<div class="content">
<div class="actionbar">
<button class="btn btn-lg border-0 d-md-none" type="button" data-bs-toggle="offcanvas" data-bs-target="#tocOffcanvas" aria-controls="tocOffcanvas" aria-expanded="false" aria-label="Show table of contents">
<i class="bi bi-list"></i>
</button>
<nav id="breadcrumb"></nav>
</div>
<article data-uid="EchoHub.Core.DTOs.AssignRoleRequest">
<h1 id="EchoHub_Core_DTOs_AssignRoleRequest" data-uid="EchoHub.Core.DTOs.AssignRoleRequest" class="text-break">
Class AssignRoleRequest <a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h1>
<div class="facts text-secondary">
<dl><dt>Namespace</dt><dd><a class="xref" href="EchoHub.html">EchoHub</a>.<a class="xref" href="EchoHub.Core.html">Core</a>.<a class="xref" href="EchoHub.Core.DTOs.html">DTOs</a></dd></dl>
<dl><dt>Assembly</dt><dd>EchoHub.Core.dll</dd></dl>
</div>
<div class="markdown summary"></div>
<div class="markdown conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public record AssignRoleRequest : IEquatable&lt;AssignRoleRequest&gt;</code></pre>
</div>
<dl class="typelist inheritance">
<dt>Inheritance</dt>
<dd>
<div><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object">object</a></div>
<div><span class="xref">AssignRoleRequest</span></div>
</dd>
</dl>
<dl class="typelist implements">
<dt>Implements</dt>
<dd>
<div><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.iequatable-1">IEquatable</a>&lt;<a class="xref" href="EchoHub.Core.DTOs.AssignRoleRequest.html">AssignRoleRequest</a>&gt;</div>
</dd>
</dl>
<dl class="typelist inheritedMembers">
<dt>Inherited Members</dt>
<dd>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.gettype">object.GetType()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.memberwiseclone">object.MemberwiseClone()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object-system-object)">object.Equals(object, object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.referenceequals">object.ReferenceEquals(object, object)</a>
</div>
</dd></dl>
<h2 class="section" id="constructors">Constructors
</h2>
<a id="EchoHub_Core_DTOs_AssignRoleRequest__ctor_" data-uid="EchoHub.Core.DTOs.AssignRoleRequest.#ctor*"></a>
<h3 id="EchoHub_Core_DTOs_AssignRoleRequest__ctor_EchoHub_Core_DTOs_AssignRoleRequest_" data-uid="EchoHub.Core.DTOs.AssignRoleRequest.#ctor(EchoHub.Core.DTOs.AssignRoleRequest)">
AssignRoleRequest(AssignRoleRequest)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">protected AssignRoleRequest(AssignRoleRequest original)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>original</code> <a class="xref" href="EchoHub.Core.DTOs.AssignRoleRequest.html">AssignRoleRequest</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_AssignRoleRequest__ctor_" data-uid="EchoHub.Core.DTOs.AssignRoleRequest.#ctor*"></a>
<h3 id="EchoHub_Core_DTOs_AssignRoleRequest__ctor_System_String_EchoHub_Core_Models_ServerRole_" data-uid="EchoHub.Core.DTOs.AssignRoleRequest.#ctor(System.String,EchoHub.Core.Models.ServerRole)">
AssignRoleRequest(string, ServerRole)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public AssignRoleRequest(string Username, ServerRole Role)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>Username</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>Role</code> <a class="xref" href="EchoHub.Core.Models.ServerRole.html">ServerRole</a></dt>
<dd></dd>
</dl>
<h2 class="section" id="properties">Properties
</h2>
<a id="EchoHub_Core_DTOs_AssignRoleRequest_EqualityContract_" data-uid="EchoHub.Core.DTOs.AssignRoleRequest.EqualityContract*"></a>
<h3 id="EchoHub_Core_DTOs_AssignRoleRequest_EqualityContract" data-uid="EchoHub.Core.DTOs.AssignRoleRequest.EqualityContract">
EqualityContract
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">protected virtual Type EqualityContract { get; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.type">Type</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_AssignRoleRequest_Role_" data-uid="EchoHub.Core.DTOs.AssignRoleRequest.Role*"></a>
<h3 id="EchoHub_Core_DTOs_AssignRoleRequest_Role" data-uid="EchoHub.Core.DTOs.AssignRoleRequest.Role">
Role
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public ServerRole Role { get; init; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="EchoHub.Core.Models.ServerRole.html">ServerRole</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_AssignRoleRequest_Username_" data-uid="EchoHub.Core.DTOs.AssignRoleRequest.Username*"></a>
<h3 id="EchoHub_Core_DTOs_AssignRoleRequest_Username" data-uid="EchoHub.Core.DTOs.AssignRoleRequest.Username">
Username
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public string Username { get; init; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h2 class="section" id="methods">Methods
</h2>
<a id="EchoHub_Core_DTOs_AssignRoleRequest_Deconstruct_" data-uid="EchoHub.Core.DTOs.AssignRoleRequest.Deconstruct*"></a>
<h3 id="EchoHub_Core_DTOs_AssignRoleRequest_Deconstruct_System_String__EchoHub_Core_Models_ServerRole__" data-uid="EchoHub.Core.DTOs.AssignRoleRequest.Deconstruct(System.String@,EchoHub.Core.Models.ServerRole@)">
Deconstruct(out string, out ServerRole)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public void Deconstruct(out string Username, out ServerRole Role)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>Username</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>Role</code> <a class="xref" href="EchoHub.Core.Models.ServerRole.html">ServerRole</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_AssignRoleRequest_Equals_" data-uid="EchoHub.Core.DTOs.AssignRoleRequest.Equals*"></a>
<h3 id="EchoHub_Core_DTOs_AssignRoleRequest_Equals_EchoHub_Core_DTOs_AssignRoleRequest_" data-uid="EchoHub.Core.DTOs.AssignRoleRequest.Equals(EchoHub.Core.DTOs.AssignRoleRequest)">
Equals(AssignRoleRequest?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual bool Equals(AssignRoleRequest? other)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>other</code> <a class="xref" href="EchoHub.Core.DTOs.AssignRoleRequest.html">AssignRoleRequest</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_AssignRoleRequest_Equals_" data-uid="EchoHub.Core.DTOs.AssignRoleRequest.Equals*"></a>
<h3 id="EchoHub_Core_DTOs_AssignRoleRequest_Equals_System_Object_" data-uid="EchoHub.Core.DTOs.AssignRoleRequest.Equals(System.Object)">
Equals(object?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public override bool Equals(object? obj)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>obj</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object">object</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_AssignRoleRequest_GetHashCode_" data-uid="EchoHub.Core.DTOs.AssignRoleRequest.GetHashCode*"></a>
<h3 id="EchoHub_Core_DTOs_AssignRoleRequest_GetHashCode" data-uid="EchoHub.Core.DTOs.AssignRoleRequest.GetHashCode">
GetHashCode()
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public override int GetHashCode()</code></pre>
</div>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_AssignRoleRequest_PrintMembers_" data-uid="EchoHub.Core.DTOs.AssignRoleRequest.PrintMembers*"></a>
<h3 id="EchoHub_Core_DTOs_AssignRoleRequest_PrintMembers_System_Text_StringBuilder_" data-uid="EchoHub.Core.DTOs.AssignRoleRequest.PrintMembers(System.Text.StringBuilder)">
PrintMembers(StringBuilder)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">protected virtual bool PrintMembers(StringBuilder builder)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>builder</code> <span class="xref">StringBuilder</span></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_AssignRoleRequest_ToString_" data-uid="EchoHub.Core.DTOs.AssignRoleRequest.ToString*"></a>
<h3 id="EchoHub_Core_DTOs_AssignRoleRequest_ToString" data-uid="EchoHub.Core.DTOs.AssignRoleRequest.ToString">
ToString()
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public override string ToString()</code></pre>
</div>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h2 class="section" id="operators">Operators
</h2>
<a id="EchoHub_Core_DTOs_AssignRoleRequest_op_Equality_" data-uid="EchoHub.Core.DTOs.AssignRoleRequest.op_Equality*"></a>
<h3 id="EchoHub_Core_DTOs_AssignRoleRequest_op_Equality_EchoHub_Core_DTOs_AssignRoleRequest_EchoHub_Core_DTOs_AssignRoleRequest_" data-uid="EchoHub.Core.DTOs.AssignRoleRequest.op_Equality(EchoHub.Core.DTOs.AssignRoleRequest,EchoHub.Core.DTOs.AssignRoleRequest)">
operator ==(AssignRoleRequest?, AssignRoleRequest?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public static bool operator ==(AssignRoleRequest? left, AssignRoleRequest? right)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>left</code> <a class="xref" href="EchoHub.Core.DTOs.AssignRoleRequest.html">AssignRoleRequest</a></dt>
<dd></dd>
<dt><code>right</code> <a class="xref" href="EchoHub.Core.DTOs.AssignRoleRequest.html">AssignRoleRequest</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_AssignRoleRequest_op_Inequality_" data-uid="EchoHub.Core.DTOs.AssignRoleRequest.op_Inequality*"></a>
<h3 id="EchoHub_Core_DTOs_AssignRoleRequest_op_Inequality_EchoHub_Core_DTOs_AssignRoleRequest_EchoHub_Core_DTOs_AssignRoleRequest_" data-uid="EchoHub.Core.DTOs.AssignRoleRequest.op_Inequality(EchoHub.Core.DTOs.AssignRoleRequest,EchoHub.Core.DTOs.AssignRoleRequest)">
operator !=(AssignRoleRequest?, AssignRoleRequest?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public static bool operator !=(AssignRoleRequest? left, AssignRoleRequest? right)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>left</code> <a class="xref" href="EchoHub.Core.DTOs.AssignRoleRequest.html">AssignRoleRequest</a></dt>
<dd></dd>
<dt><code>right</code> <a class="xref" href="EchoHub.Core.DTOs.AssignRoleRequest.html">AssignRoleRequest</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
</article>
<div class="contribution d-print-none">
<a href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs" class="edit-link">Edit this page</a>
</div>
</div>
<div class="affix">
<nav id="affix"></nav>
</div>
</main>
<div class="container-xxl search-results" id="search-results"></div>
<footer class="border-top text-secondary">
<div class="container-xxl">
<div class="flex-fill">
<div class='footer-custom'><div class='footer-inner'><span class='footer-brand'>EchoHub</span><span class='footer-sep'>&middot;</span><a href='https://github.com/HueByte/EchoHub'>GitHub</a><span class='footer-sep'>&middot;</span><a href='https://echohub.voidcube.cloud'>Website</a><span class='footer-sep'>&middot;</span><span class='footer-credit'>Built with <a href='https://dotnet.github.io/docfx'>DocFX</a></span></div></div>
</div>
</div>
</footer>
</body>
</html>
+590
View File
@@ -0,0 +1,590 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Class BanRequest | EchoHub Documentation </title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="title" content="Class BanRequest | EchoHub Documentation ">
<link rel="icon" href="../../images/hue_icon.svg">
<link rel="stylesheet" href="../../public/docfx.min.css">
<link rel="stylesheet" href="../../public/main.css">
<meta name="docfx:navrel" content="../../toc.html">
<meta name="docfx:tocrel" content="../toc.html">
<meta name="docfx:rel" content="../../">
<meta name="docfx:docurl" content="https://github.com/HueByte/EchoHub/new/master/apiSpec/new?filename=EchoHub_Core_DTOs_BanRequest.md&amp;value=---%0Auid%3A%20EchoHub.Core.DTOs.BanRequest%0Asummary%3A%20&#39;*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax&#39;%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">
<meta name="loc:inThisArticle" content="In this article">
<meta name="loc:searchResultsCount" content="{count} results for &quot;{query}&quot;">
<meta name="loc:searchNoResults" content="No results for &quot;{query}&quot;">
<meta name="loc:tocFilter" content="Filter by title">
<meta name="loc:nextArticle" content="Next">
<meta name="loc:prevArticle" content="Previous">
<meta name="loc:themeLight" content="Light">
<meta name="loc:themeDark" content="Dark">
<meta name="loc:themeAuto" content="Auto">
<meta name="loc:changeTheme" content="Change theme">
<meta name="loc:copy" content="Copy">
<meta name="loc:downloadPdf" content="Download PDF">
<script type="module" src="./../../public/docfx.min.js"></script>
<script>
const theme = localStorage.getItem('theme') || 'auto'
document.documentElement.setAttribute('data-bs-theme', theme === 'auto' ? (window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light') : theme)
</script>
</head>
<body class="tex2jax_ignore" data-layout="" data-yaml-mime="ManagedReference">
<header class="bg-body border-bottom">
<nav id="autocollapse" class="navbar navbar-expand-md" role="navigation">
<div class="container-xxl flex-nowrap">
<a class="navbar-brand" href="../../index.html">
<img id="logo" class="svg" src="../../images/hue_icon.svg" alt="EchoHub">
EchoHub
</a>
<button class="btn btn-lg d-md-none border-0" type="button" data-bs-toggle="collapse" data-bs-target="#navpanel" aria-controls="navpanel" aria-expanded="false" aria-label="Toggle navigation">
<i class="bi bi-three-dots"></i>
</button>
<div class="collapse navbar-collapse" id="navpanel">
<div id="navbar">
<form class="search" role="search" id="search">
<i class="bi bi-search"></i>
<input class="form-control" id="search-query" type="search" disabled placeholder="Search" autocomplete="off" aria-label="Search">
</form>
</div>
</div>
</div>
</nav>
</header>
<main class="container-xxl">
<div class="toc-offcanvas">
<div class="offcanvas-md offcanvas-start" tabindex="-1" id="tocOffcanvas" aria-labelledby="tocOffcanvasLabel">
<div class="offcanvas-header">
<h5 class="offcanvas-title" id="tocOffcanvasLabel">Table of Contents</h5>
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" data-bs-target="#tocOffcanvas" aria-label="Close"></button>
</div>
<div class="offcanvas-body">
<nav class="toc" id="toc"></nav>
</div>
</div>
</div>
<div class="content">
<div class="actionbar">
<button class="btn btn-lg border-0 d-md-none" type="button" data-bs-toggle="offcanvas" data-bs-target="#tocOffcanvas" aria-controls="tocOffcanvas" aria-expanded="false" aria-label="Show table of contents">
<i class="bi bi-list"></i>
</button>
<nav id="breadcrumb"></nav>
</div>
<article data-uid="EchoHub.Core.DTOs.BanRequest">
<h1 id="EchoHub_Core_DTOs_BanRequest" data-uid="EchoHub.Core.DTOs.BanRequest" class="text-break">
Class BanRequest <a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h1>
<div class="facts text-secondary">
<dl><dt>Namespace</dt><dd><a class="xref" href="EchoHub.html">EchoHub</a>.<a class="xref" href="EchoHub.Core.html">Core</a>.<a class="xref" href="EchoHub.Core.DTOs.html">DTOs</a></dd></dl>
<dl><dt>Assembly</dt><dd>EchoHub.Core.dll</dd></dl>
</div>
<div class="markdown summary"></div>
<div class="markdown conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public record BanRequest : IEquatable&lt;BanRequest&gt;</code></pre>
</div>
<dl class="typelist inheritance">
<dt>Inheritance</dt>
<dd>
<div><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object">object</a></div>
<div><span class="xref">BanRequest</span></div>
</dd>
</dl>
<dl class="typelist implements">
<dt>Implements</dt>
<dd>
<div><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.iequatable-1">IEquatable</a>&lt;<a class="xref" href="EchoHub.Core.DTOs.BanRequest.html">BanRequest</a>&gt;</div>
</dd>
</dl>
<dl class="typelist inheritedMembers">
<dt>Inherited Members</dt>
<dd>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.gettype">object.GetType()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.memberwiseclone">object.MemberwiseClone()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object-system-object)">object.Equals(object, object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.referenceequals">object.ReferenceEquals(object, object)</a>
</div>
</dd></dl>
<h2 class="section" id="constructors">Constructors
</h2>
<a id="EchoHub_Core_DTOs_BanRequest__ctor_" data-uid="EchoHub.Core.DTOs.BanRequest.#ctor*"></a>
<h3 id="EchoHub_Core_DTOs_BanRequest__ctor_EchoHub_Core_DTOs_BanRequest_" data-uid="EchoHub.Core.DTOs.BanRequest.#ctor(EchoHub.Core.DTOs.BanRequest)">
BanRequest(BanRequest)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">protected BanRequest(BanRequest original)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>original</code> <a class="xref" href="EchoHub.Core.DTOs.BanRequest.html">BanRequest</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_BanRequest__ctor_" data-uid="EchoHub.Core.DTOs.BanRequest.#ctor*"></a>
<h3 id="EchoHub_Core_DTOs_BanRequest__ctor_System_String_" data-uid="EchoHub.Core.DTOs.BanRequest.#ctor(System.String)">
BanRequest(string?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public BanRequest(string? Reason = null)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>Reason</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h2 class="section" id="properties">Properties
</h2>
<a id="EchoHub_Core_DTOs_BanRequest_EqualityContract_" data-uid="EchoHub.Core.DTOs.BanRequest.EqualityContract*"></a>
<h3 id="EchoHub_Core_DTOs_BanRequest_EqualityContract" data-uid="EchoHub.Core.DTOs.BanRequest.EqualityContract">
EqualityContract
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">protected virtual Type EqualityContract { get; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.type">Type</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_BanRequest_Reason_" data-uid="EchoHub.Core.DTOs.BanRequest.Reason*"></a>
<h3 id="EchoHub_Core_DTOs_BanRequest_Reason" data-uid="EchoHub.Core.DTOs.BanRequest.Reason">
Reason
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public string? Reason { get; init; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h2 class="section" id="methods">Methods
</h2>
<a id="EchoHub_Core_DTOs_BanRequest_Deconstruct_" data-uid="EchoHub.Core.DTOs.BanRequest.Deconstruct*"></a>
<h3 id="EchoHub_Core_DTOs_BanRequest_Deconstruct_System_String__" data-uid="EchoHub.Core.DTOs.BanRequest.Deconstruct(System.String@)">
Deconstruct(out string?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public void Deconstruct(out string? Reason)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>Reason</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_BanRequest_Equals_" data-uid="EchoHub.Core.DTOs.BanRequest.Equals*"></a>
<h3 id="EchoHub_Core_DTOs_BanRequest_Equals_EchoHub_Core_DTOs_BanRequest_" data-uid="EchoHub.Core.DTOs.BanRequest.Equals(EchoHub.Core.DTOs.BanRequest)">
Equals(BanRequest?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual bool Equals(BanRequest? other)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>other</code> <a class="xref" href="EchoHub.Core.DTOs.BanRequest.html">BanRequest</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_BanRequest_Equals_" data-uid="EchoHub.Core.DTOs.BanRequest.Equals*"></a>
<h3 id="EchoHub_Core_DTOs_BanRequest_Equals_System_Object_" data-uid="EchoHub.Core.DTOs.BanRequest.Equals(System.Object)">
Equals(object?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public override bool Equals(object? obj)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>obj</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object">object</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_BanRequest_GetHashCode_" data-uid="EchoHub.Core.DTOs.BanRequest.GetHashCode*"></a>
<h3 id="EchoHub_Core_DTOs_BanRequest_GetHashCode" data-uid="EchoHub.Core.DTOs.BanRequest.GetHashCode">
GetHashCode()
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public override int GetHashCode()</code></pre>
</div>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_BanRequest_PrintMembers_" data-uid="EchoHub.Core.DTOs.BanRequest.PrintMembers*"></a>
<h3 id="EchoHub_Core_DTOs_BanRequest_PrintMembers_System_Text_StringBuilder_" data-uid="EchoHub.Core.DTOs.BanRequest.PrintMembers(System.Text.StringBuilder)">
PrintMembers(StringBuilder)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">protected virtual bool PrintMembers(StringBuilder builder)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>builder</code> <span class="xref">StringBuilder</span></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_BanRequest_ToString_" data-uid="EchoHub.Core.DTOs.BanRequest.ToString*"></a>
<h3 id="EchoHub_Core_DTOs_BanRequest_ToString" data-uid="EchoHub.Core.DTOs.BanRequest.ToString">
ToString()
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public override string ToString()</code></pre>
</div>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h2 class="section" id="operators">Operators
</h2>
<a id="EchoHub_Core_DTOs_BanRequest_op_Equality_" data-uid="EchoHub.Core.DTOs.BanRequest.op_Equality*"></a>
<h3 id="EchoHub_Core_DTOs_BanRequest_op_Equality_EchoHub_Core_DTOs_BanRequest_EchoHub_Core_DTOs_BanRequest_" data-uid="EchoHub.Core.DTOs.BanRequest.op_Equality(EchoHub.Core.DTOs.BanRequest,EchoHub.Core.DTOs.BanRequest)">
operator ==(BanRequest?, BanRequest?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public static bool operator ==(BanRequest? left, BanRequest? right)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>left</code> <a class="xref" href="EchoHub.Core.DTOs.BanRequest.html">BanRequest</a></dt>
<dd></dd>
<dt><code>right</code> <a class="xref" href="EchoHub.Core.DTOs.BanRequest.html">BanRequest</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_BanRequest_op_Inequality_" data-uid="EchoHub.Core.DTOs.BanRequest.op_Inequality*"></a>
<h3 id="EchoHub_Core_DTOs_BanRequest_op_Inequality_EchoHub_Core_DTOs_BanRequest_EchoHub_Core_DTOs_BanRequest_" data-uid="EchoHub.Core.DTOs.BanRequest.op_Inequality(EchoHub.Core.DTOs.BanRequest,EchoHub.Core.DTOs.BanRequest)">
operator !=(BanRequest?, BanRequest?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public static bool operator !=(BanRequest? left, BanRequest? right)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>left</code> <a class="xref" href="EchoHub.Core.DTOs.BanRequest.html">BanRequest</a></dt>
<dd></dd>
<dt><code>right</code> <a class="xref" href="EchoHub.Core.DTOs.BanRequest.html">BanRequest</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
</article>
<div class="contribution d-print-none">
<a href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs" class="edit-link">Edit this page</a>
</div>
</div>
<div class="affix">
<nav id="affix"></nav>
</div>
</main>
<div class="container-xxl search-results" id="search-results"></div>
<footer class="border-top text-secondary">
<div class="container-xxl">
<div class="flex-fill">
<div class='footer-custom'><div class='footer-inner'><span class='footer-brand'>EchoHub</span><span class='footer-sep'>&middot;</span><a href='https://github.com/HueByte/EchoHub'>GitHub</a><span class='footer-sep'>&middot;</span><a href='https://echohub.voidcube.cloud'>Website</a><span class='footer-sep'>&middot;</span><span class='footer-credit'>Built with <a href='https://dotnet.github.io/docfx'>DocFX</a></span></div></div>
</div>
</div>
</footer>
</body>
</html>
+41 -6
View File
@@ -182,8 +182,8 @@ Class ChannelDto <a class="header-action link-secondary" title="View source" hr
<a id="EchoHub_Core_DTOs_ChannelDto__ctor_" data-uid="EchoHub.Core.DTOs.ChannelDto.#ctor*"></a>
<h3 id="EchoHub_Core_DTOs_ChannelDto__ctor_System_Guid_System_String_System_String_System_Int32_System_DateTimeOffset_" data-uid="EchoHub.Core.DTOs.ChannelDto.#ctor(System.Guid,System.String,System.String,System.Int32,System.DateTimeOffset)">
ChannelDto(Guid, string, string?, int, DateTimeOffset)
<h3 id="EchoHub_Core_DTOs_ChannelDto__ctor_System_Guid_System_String_System_String_System_Boolean_System_Int32_System_DateTimeOffset_" data-uid="EchoHub.Core.DTOs.ChannelDto.#ctor(System.Guid,System.String,System.String,System.Boolean,System.Int32,System.DateTimeOffset)">
ChannelDto(Guid, string, string?, bool, int, DateTimeOffset)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ChatDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
@@ -191,7 +191,7 @@ Class ChannelDto <a class="header-action link-secondary" title="View source" hr
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public ChannelDto(Guid Id, string Name, string? Topic, int MessageCount, DateTimeOffset CreatedAt)</code></pre>
<pre><code class="lang-csharp hljs">public ChannelDto(Guid Id, string Name, string? Topic, bool IsPublic, int MessageCount, DateTimeOffset CreatedAt)</code></pre>
</div>
<h4 class="section">Parameters</h4>
@@ -202,6 +202,8 @@ Class ChannelDto <a class="header-action link-secondary" title="View source" hr
<dd></dd>
<dt><code>Topic</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>IsPublic</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
<dt><code>MessageCount</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></dt>
<dd></dd>
<dt><code>CreatedAt</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.datetimeoffset">DateTimeOffset</a></dt>
@@ -316,6 +318,37 @@ Class ChannelDto <a class="header-action link-secondary" title="View source" hr
<a id="EchoHub_Core_DTOs_ChannelDto_IsPublic_" data-uid="EchoHub.Core.DTOs.ChannelDto.IsPublic*"></a>
<h3 id="EchoHub_Core_DTOs_ChannelDto_IsPublic" data-uid="EchoHub.Core.DTOs.ChannelDto.IsPublic">
IsPublic
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ChatDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public bool IsPublic { get; init; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_ChannelDto_MessageCount_" data-uid="EchoHub.Core.DTOs.ChannelDto.MessageCount*"></a>
<h3 id="EchoHub_Core_DTOs_ChannelDto_MessageCount" data-uid="EchoHub.Core.DTOs.ChannelDto.MessageCount">
@@ -415,8 +448,8 @@ Class ChannelDto <a class="header-action link-secondary" title="View source" hr
<a id="EchoHub_Core_DTOs_ChannelDto_Deconstruct_" data-uid="EchoHub.Core.DTOs.ChannelDto.Deconstruct*"></a>
<h3 id="EchoHub_Core_DTOs_ChannelDto_Deconstruct_System_Guid__System_String__System_String__System_Int32__System_DateTimeOffset__" data-uid="EchoHub.Core.DTOs.ChannelDto.Deconstruct(System.Guid@,System.String@,System.String@,System.Int32@,System.DateTimeOffset@)">
Deconstruct(out Guid, out string, out string?, out int, out DateTimeOffset)
<h3 id="EchoHub_Core_DTOs_ChannelDto_Deconstruct_System_Guid__System_String__System_String__System_Boolean__System_Int32__System_DateTimeOffset__" data-uid="EchoHub.Core.DTOs.ChannelDto.Deconstruct(System.Guid@,System.String@,System.String@,System.Boolean@,System.Int32@,System.DateTimeOffset@)">
Deconstruct(out Guid, out string, out string?, out bool, out int, out DateTimeOffset)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ChatDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
@@ -424,7 +457,7 @@ Class ChannelDto <a class="header-action link-secondary" title="View source" hr
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public void Deconstruct(out Guid Id, out string Name, out string? Topic, out int MessageCount, out DateTimeOffset CreatedAt)</code></pre>
<pre><code class="lang-csharp hljs">public void Deconstruct(out Guid Id, out string Name, out string? Topic, out bool IsPublic, out int MessageCount, out DateTimeOffset CreatedAt)</code></pre>
</div>
<h4 class="section">Parameters</h4>
@@ -435,6 +468,8 @@ Class ChannelDto <a class="header-action link-secondary" title="View source" hr
<dd></dd>
<dt><code>Topic</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>IsPublic</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
<dt><code>MessageCount</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></dt>
<dd></dd>
<dt><code>CreatedAt</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.datetimeoffset">DateTimeOffset</a></dt>
@@ -182,8 +182,8 @@ Class CreateChannelRequest <a class="header-action link-secondary" title="View
<a id="EchoHub_Core_DTOs_CreateChannelRequest__ctor_" data-uid="EchoHub.Core.DTOs.CreateChannelRequest.#ctor*"></a>
<h3 id="EchoHub_Core_DTOs_CreateChannelRequest__ctor_System_String_System_String_" data-uid="EchoHub.Core.DTOs.CreateChannelRequest.#ctor(System.String,System.String)">
CreateChannelRequest(string, string?)
<h3 id="EchoHub_Core_DTOs_CreateChannelRequest__ctor_System_String_System_String_System_Boolean_" data-uid="EchoHub.Core.DTOs.CreateChannelRequest.#ctor(System.String,System.String,System.Boolean)">
CreateChannelRequest(string, string?, bool)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ChatDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
@@ -191,7 +191,7 @@ Class CreateChannelRequest <a class="header-action link-secondary" title="View
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public CreateChannelRequest(string Name, string? Topic = null)</code></pre>
<pre><code class="lang-csharp hljs">public CreateChannelRequest(string Name, string? Topic = null, bool IsPublic = true)</code></pre>
</div>
<h4 class="section">Parameters</h4>
@@ -200,6 +200,8 @@ Class CreateChannelRequest <a class="header-action link-secondary" title="View
<dd></dd>
<dt><code>Topic</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>IsPublic</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
@@ -248,6 +250,37 @@ Class CreateChannelRequest <a class="header-action link-secondary" title="View
<a id="EchoHub_Core_DTOs_CreateChannelRequest_IsPublic_" data-uid="EchoHub.Core.DTOs.CreateChannelRequest.IsPublic*"></a>
<h3 id="EchoHub_Core_DTOs_CreateChannelRequest_IsPublic" data-uid="EchoHub.Core.DTOs.CreateChannelRequest.IsPublic">
IsPublic
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ChatDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public bool IsPublic { get; init; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_CreateChannelRequest_Name_" data-uid="EchoHub.Core.DTOs.CreateChannelRequest.Name*"></a>
<h3 id="EchoHub_Core_DTOs_CreateChannelRequest_Name" data-uid="EchoHub.Core.DTOs.CreateChannelRequest.Name">
@@ -316,8 +349,8 @@ Class CreateChannelRequest <a class="header-action link-secondary" title="View
<a id="EchoHub_Core_DTOs_CreateChannelRequest_Deconstruct_" data-uid="EchoHub.Core.DTOs.CreateChannelRequest.Deconstruct*"></a>
<h3 id="EchoHub_Core_DTOs_CreateChannelRequest_Deconstruct_System_String__System_String__" data-uid="EchoHub.Core.DTOs.CreateChannelRequest.Deconstruct(System.String@,System.String@)">
Deconstruct(out string, out string?)
<h3 id="EchoHub_Core_DTOs_CreateChannelRequest_Deconstruct_System_String__System_String__System_Boolean__" data-uid="EchoHub.Core.DTOs.CreateChannelRequest.Deconstruct(System.String@,System.String@,System.Boolean@)">
Deconstruct(out string, out string?, out bool)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ChatDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
@@ -325,7 +358,7 @@ Class CreateChannelRequest <a class="header-action link-secondary" title="View
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public void Deconstruct(out string Name, out string? Topic)</code></pre>
<pre><code class="lang-csharp hljs">public void Deconstruct(out string Name, out string? Topic, out bool IsPublic)</code></pre>
</div>
<h4 class="section">Parameters</h4>
@@ -334,6 +367,8 @@ Class CreateChannelRequest <a class="header-action link-secondary" title="View
<dd></dd>
<dt><code>Topic</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>IsPublic</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
+730
View File
@@ -0,0 +1,730 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Class EmbedDto | EchoHub Documentation </title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="title" content="Class EmbedDto | EchoHub Documentation ">
<link rel="icon" href="../../images/hue_icon.svg">
<link rel="stylesheet" href="../../public/docfx.min.css">
<link rel="stylesheet" href="../../public/main.css">
<meta name="docfx:navrel" content="../../toc.html">
<meta name="docfx:tocrel" content="../toc.html">
<meta name="docfx:rel" content="../../">
<meta name="docfx:docurl" content="https://github.com/HueByte/EchoHub/new/master/apiSpec/new?filename=EchoHub_Core_DTOs_EmbedDto.md&amp;value=---%0Auid%3A%20EchoHub.Core.DTOs.EmbedDto%0Asummary%3A%20&#39;*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax&#39;%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">
<meta name="loc:inThisArticle" content="In this article">
<meta name="loc:searchResultsCount" content="{count} results for &quot;{query}&quot;">
<meta name="loc:searchNoResults" content="No results for &quot;{query}&quot;">
<meta name="loc:tocFilter" content="Filter by title">
<meta name="loc:nextArticle" content="Next">
<meta name="loc:prevArticle" content="Previous">
<meta name="loc:themeLight" content="Light">
<meta name="loc:themeDark" content="Dark">
<meta name="loc:themeAuto" content="Auto">
<meta name="loc:changeTheme" content="Change theme">
<meta name="loc:copy" content="Copy">
<meta name="loc:downloadPdf" content="Download PDF">
<script type="module" src="./../../public/docfx.min.js"></script>
<script>
const theme = localStorage.getItem('theme') || 'auto'
document.documentElement.setAttribute('data-bs-theme', theme === 'auto' ? (window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light') : theme)
</script>
</head>
<body class="tex2jax_ignore" data-layout="" data-yaml-mime="ManagedReference">
<header class="bg-body border-bottom">
<nav id="autocollapse" class="navbar navbar-expand-md" role="navigation">
<div class="container-xxl flex-nowrap">
<a class="navbar-brand" href="../../index.html">
<img id="logo" class="svg" src="../../images/hue_icon.svg" alt="EchoHub">
EchoHub
</a>
<button class="btn btn-lg d-md-none border-0" type="button" data-bs-toggle="collapse" data-bs-target="#navpanel" aria-controls="navpanel" aria-expanded="false" aria-label="Toggle navigation">
<i class="bi bi-three-dots"></i>
</button>
<div class="collapse navbar-collapse" id="navpanel">
<div id="navbar">
<form class="search" role="search" id="search">
<i class="bi bi-search"></i>
<input class="form-control" id="search-query" type="search" disabled placeholder="Search" autocomplete="off" aria-label="Search">
</form>
</div>
</div>
</div>
</nav>
</header>
<main class="container-xxl">
<div class="toc-offcanvas">
<div class="offcanvas-md offcanvas-start" tabindex="-1" id="tocOffcanvas" aria-labelledby="tocOffcanvasLabel">
<div class="offcanvas-header">
<h5 class="offcanvas-title" id="tocOffcanvasLabel">Table of Contents</h5>
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" data-bs-target="#tocOffcanvas" aria-label="Close"></button>
</div>
<div class="offcanvas-body">
<nav class="toc" id="toc"></nav>
</div>
</div>
</div>
<div class="content">
<div class="actionbar">
<button class="btn btn-lg border-0 d-md-none" type="button" data-bs-toggle="offcanvas" data-bs-target="#tocOffcanvas" aria-controls="tocOffcanvas" aria-expanded="false" aria-label="Show table of contents">
<i class="bi bi-list"></i>
</button>
<nav id="breadcrumb"></nav>
</div>
<article data-uid="EchoHub.Core.DTOs.EmbedDto">
<h1 id="EchoHub_Core_DTOs_EmbedDto" data-uid="EchoHub.Core.DTOs.EmbedDto" class="text-break">
Class EmbedDto <a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ChatDtos.cs"><i class="bi bi-code-slash"></i></a>
</h1>
<div class="facts text-secondary">
<dl><dt>Namespace</dt><dd><a class="xref" href="EchoHub.html">EchoHub</a>.<a class="xref" href="EchoHub.Core.html">Core</a>.<a class="xref" href="EchoHub.Core.DTOs.html">DTOs</a></dd></dl>
<dl><dt>Assembly</dt><dd>EchoHub.Core.dll</dd></dl>
</div>
<div class="markdown summary"></div>
<div class="markdown conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public record EmbedDto : IEquatable&lt;EmbedDto&gt;</code></pre>
</div>
<dl class="typelist inheritance">
<dt>Inheritance</dt>
<dd>
<div><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object">object</a></div>
<div><span class="xref">EmbedDto</span></div>
</dd>
</dl>
<dl class="typelist implements">
<dt>Implements</dt>
<dd>
<div><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.iequatable-1">IEquatable</a>&lt;<a class="xref" href="EchoHub.Core.DTOs.EmbedDto.html">EmbedDto</a>&gt;</div>
</dd>
</dl>
<dl class="typelist inheritedMembers">
<dt>Inherited Members</dt>
<dd>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.gettype">object.GetType()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.memberwiseclone">object.MemberwiseClone()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object-system-object)">object.Equals(object, object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.referenceequals">object.ReferenceEquals(object, object)</a>
</div>
</dd></dl>
<h2 class="section" id="constructors">Constructors
</h2>
<a id="EchoHub_Core_DTOs_EmbedDto__ctor_" data-uid="EchoHub.Core.DTOs.EmbedDto.#ctor*"></a>
<h3 id="EchoHub_Core_DTOs_EmbedDto__ctor_EchoHub_Core_DTOs_EmbedDto_" data-uid="EchoHub.Core.DTOs.EmbedDto.#ctor(EchoHub.Core.DTOs.EmbedDto)">
EmbedDto(EmbedDto)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ChatDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">protected EmbedDto(EmbedDto original)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>original</code> <a class="xref" href="EchoHub.Core.DTOs.EmbedDto.html">EmbedDto</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_EmbedDto__ctor_" data-uid="EchoHub.Core.DTOs.EmbedDto.#ctor*"></a>
<h3 id="EchoHub_Core_DTOs_EmbedDto__ctor_System_String_System_String_System_String_System_String_System_String_" data-uid="EchoHub.Core.DTOs.EmbedDto.#ctor(System.String,System.String,System.String,System.String,System.String)">
EmbedDto(string?, string?, string?, string?, string)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ChatDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public EmbedDto(string? SiteName, string? Title, string? Description, string? ImageAscii, string Url)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>SiteName</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>Title</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>Description</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>ImageAscii</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>Url</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h2 class="section" id="properties">Properties
</h2>
<a id="EchoHub_Core_DTOs_EmbedDto_Description_" data-uid="EchoHub.Core.DTOs.EmbedDto.Description*"></a>
<h3 id="EchoHub_Core_DTOs_EmbedDto_Description" data-uid="EchoHub.Core.DTOs.EmbedDto.Description">
Description
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ChatDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public string? Description { get; init; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_EmbedDto_EqualityContract_" data-uid="EchoHub.Core.DTOs.EmbedDto.EqualityContract*"></a>
<h3 id="EchoHub_Core_DTOs_EmbedDto_EqualityContract" data-uid="EchoHub.Core.DTOs.EmbedDto.EqualityContract">
EqualityContract
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ChatDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">protected virtual Type EqualityContract { get; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.type">Type</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_EmbedDto_ImageAscii_" data-uid="EchoHub.Core.DTOs.EmbedDto.ImageAscii*"></a>
<h3 id="EchoHub_Core_DTOs_EmbedDto_ImageAscii" data-uid="EchoHub.Core.DTOs.EmbedDto.ImageAscii">
ImageAscii
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ChatDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public string? ImageAscii { get; init; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_EmbedDto_SiteName_" data-uid="EchoHub.Core.DTOs.EmbedDto.SiteName*"></a>
<h3 id="EchoHub_Core_DTOs_EmbedDto_SiteName" data-uid="EchoHub.Core.DTOs.EmbedDto.SiteName">
SiteName
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ChatDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public string? SiteName { get; init; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_EmbedDto_Title_" data-uid="EchoHub.Core.DTOs.EmbedDto.Title*"></a>
<h3 id="EchoHub_Core_DTOs_EmbedDto_Title" data-uid="EchoHub.Core.DTOs.EmbedDto.Title">
Title
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ChatDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public string? Title { get; init; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_EmbedDto_Url_" data-uid="EchoHub.Core.DTOs.EmbedDto.Url*"></a>
<h3 id="EchoHub_Core_DTOs_EmbedDto_Url" data-uid="EchoHub.Core.DTOs.EmbedDto.Url">
Url
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ChatDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public string Url { get; init; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h2 class="section" id="methods">Methods
</h2>
<a id="EchoHub_Core_DTOs_EmbedDto_Deconstruct_" data-uid="EchoHub.Core.DTOs.EmbedDto.Deconstruct*"></a>
<h3 id="EchoHub_Core_DTOs_EmbedDto_Deconstruct_System_String__System_String__System_String__System_String__System_String__" data-uid="EchoHub.Core.DTOs.EmbedDto.Deconstruct(System.String@,System.String@,System.String@,System.String@,System.String@)">
Deconstruct(out string?, out string?, out string?, out string?, out string)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ChatDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public void Deconstruct(out string? SiteName, out string? Title, out string? Description, out string? ImageAscii, out string Url)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>SiteName</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>Title</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>Description</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>ImageAscii</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>Url</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_EmbedDto_Equals_" data-uid="EchoHub.Core.DTOs.EmbedDto.Equals*"></a>
<h3 id="EchoHub_Core_DTOs_EmbedDto_Equals_EchoHub_Core_DTOs_EmbedDto_" data-uid="EchoHub.Core.DTOs.EmbedDto.Equals(EchoHub.Core.DTOs.EmbedDto)">
Equals(EmbedDto?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ChatDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual bool Equals(EmbedDto? other)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>other</code> <a class="xref" href="EchoHub.Core.DTOs.EmbedDto.html">EmbedDto</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_EmbedDto_Equals_" data-uid="EchoHub.Core.DTOs.EmbedDto.Equals*"></a>
<h3 id="EchoHub_Core_DTOs_EmbedDto_Equals_System_Object_" data-uid="EchoHub.Core.DTOs.EmbedDto.Equals(System.Object)">
Equals(object?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ChatDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public override bool Equals(object? obj)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>obj</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object">object</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_EmbedDto_GetHashCode_" data-uid="EchoHub.Core.DTOs.EmbedDto.GetHashCode*"></a>
<h3 id="EchoHub_Core_DTOs_EmbedDto_GetHashCode" data-uid="EchoHub.Core.DTOs.EmbedDto.GetHashCode">
GetHashCode()
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ChatDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public override int GetHashCode()</code></pre>
</div>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_EmbedDto_PrintMembers_" data-uid="EchoHub.Core.DTOs.EmbedDto.PrintMembers*"></a>
<h3 id="EchoHub_Core_DTOs_EmbedDto_PrintMembers_System_Text_StringBuilder_" data-uid="EchoHub.Core.DTOs.EmbedDto.PrintMembers(System.Text.StringBuilder)">
PrintMembers(StringBuilder)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ChatDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">protected virtual bool PrintMembers(StringBuilder builder)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>builder</code> <span class="xref">StringBuilder</span></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_EmbedDto_ToString_" data-uid="EchoHub.Core.DTOs.EmbedDto.ToString*"></a>
<h3 id="EchoHub_Core_DTOs_EmbedDto_ToString" data-uid="EchoHub.Core.DTOs.EmbedDto.ToString">
ToString()
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ChatDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public override string ToString()</code></pre>
</div>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h2 class="section" id="operators">Operators
</h2>
<a id="EchoHub_Core_DTOs_EmbedDto_op_Equality_" data-uid="EchoHub.Core.DTOs.EmbedDto.op_Equality*"></a>
<h3 id="EchoHub_Core_DTOs_EmbedDto_op_Equality_EchoHub_Core_DTOs_EmbedDto_EchoHub_Core_DTOs_EmbedDto_" data-uid="EchoHub.Core.DTOs.EmbedDto.op_Equality(EchoHub.Core.DTOs.EmbedDto,EchoHub.Core.DTOs.EmbedDto)">
operator ==(EmbedDto?, EmbedDto?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ChatDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public static bool operator ==(EmbedDto? left, EmbedDto? right)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>left</code> <a class="xref" href="EchoHub.Core.DTOs.EmbedDto.html">EmbedDto</a></dt>
<dd></dd>
<dt><code>right</code> <a class="xref" href="EchoHub.Core.DTOs.EmbedDto.html">EmbedDto</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_EmbedDto_op_Inequality_" data-uid="EchoHub.Core.DTOs.EmbedDto.op_Inequality*"></a>
<h3 id="EchoHub_Core_DTOs_EmbedDto_op_Inequality_EchoHub_Core_DTOs_EmbedDto_EchoHub_Core_DTOs_EmbedDto_" data-uid="EchoHub.Core.DTOs.EmbedDto.op_Inequality(EchoHub.Core.DTOs.EmbedDto,EchoHub.Core.DTOs.EmbedDto)">
operator !=(EmbedDto?, EmbedDto?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ChatDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public static bool operator !=(EmbedDto? left, EmbedDto? right)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>left</code> <a class="xref" href="EchoHub.Core.DTOs.EmbedDto.html">EmbedDto</a></dt>
<dd></dd>
<dt><code>right</code> <a class="xref" href="EchoHub.Core.DTOs.EmbedDto.html">EmbedDto</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
</article>
<div class="contribution d-print-none">
<a href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ChatDtos.cs" class="edit-link">Edit this page</a>
</div>
</div>
<div class="affix">
<nav id="affix"></nav>
</div>
</main>
<div class="container-xxl search-results" id="search-results"></div>
<footer class="border-top text-secondary">
<div class="container-xxl">
<div class="flex-fill">
<div class='footer-custom'><div class='footer-inner'><span class='footer-brand'>EchoHub</span><span class='footer-sep'>&middot;</span><a href='https://github.com/HueByte/EchoHub'>GitHub</a><span class='footer-sep'>&middot;</span><a href='https://echohub.voidcube.cloud'>Website</a><span class='footer-sep'>&middot;</span><span class='footer-credit'>Built with <a href='https://dotnet.github.io/docfx'>DocFX</a></span></div></div>
</div>
</div>
</footer>
</body>
</html>
+590
View File
@@ -0,0 +1,590 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Class KickRequest | EchoHub Documentation </title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="title" content="Class KickRequest | EchoHub Documentation ">
<link rel="icon" href="../../images/hue_icon.svg">
<link rel="stylesheet" href="../../public/docfx.min.css">
<link rel="stylesheet" href="../../public/main.css">
<meta name="docfx:navrel" content="../../toc.html">
<meta name="docfx:tocrel" content="../toc.html">
<meta name="docfx:rel" content="../../">
<meta name="docfx:docurl" content="https://github.com/HueByte/EchoHub/new/master/apiSpec/new?filename=EchoHub_Core_DTOs_KickRequest.md&amp;value=---%0Auid%3A%20EchoHub.Core.DTOs.KickRequest%0Asummary%3A%20&#39;*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax&#39;%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">
<meta name="loc:inThisArticle" content="In this article">
<meta name="loc:searchResultsCount" content="{count} results for &quot;{query}&quot;">
<meta name="loc:searchNoResults" content="No results for &quot;{query}&quot;">
<meta name="loc:tocFilter" content="Filter by title">
<meta name="loc:nextArticle" content="Next">
<meta name="loc:prevArticle" content="Previous">
<meta name="loc:themeLight" content="Light">
<meta name="loc:themeDark" content="Dark">
<meta name="loc:themeAuto" content="Auto">
<meta name="loc:changeTheme" content="Change theme">
<meta name="loc:copy" content="Copy">
<meta name="loc:downloadPdf" content="Download PDF">
<script type="module" src="./../../public/docfx.min.js"></script>
<script>
const theme = localStorage.getItem('theme') || 'auto'
document.documentElement.setAttribute('data-bs-theme', theme === 'auto' ? (window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light') : theme)
</script>
</head>
<body class="tex2jax_ignore" data-layout="" data-yaml-mime="ManagedReference">
<header class="bg-body border-bottom">
<nav id="autocollapse" class="navbar navbar-expand-md" role="navigation">
<div class="container-xxl flex-nowrap">
<a class="navbar-brand" href="../../index.html">
<img id="logo" class="svg" src="../../images/hue_icon.svg" alt="EchoHub">
EchoHub
</a>
<button class="btn btn-lg d-md-none border-0" type="button" data-bs-toggle="collapse" data-bs-target="#navpanel" aria-controls="navpanel" aria-expanded="false" aria-label="Toggle navigation">
<i class="bi bi-three-dots"></i>
</button>
<div class="collapse navbar-collapse" id="navpanel">
<div id="navbar">
<form class="search" role="search" id="search">
<i class="bi bi-search"></i>
<input class="form-control" id="search-query" type="search" disabled placeholder="Search" autocomplete="off" aria-label="Search">
</form>
</div>
</div>
</div>
</nav>
</header>
<main class="container-xxl">
<div class="toc-offcanvas">
<div class="offcanvas-md offcanvas-start" tabindex="-1" id="tocOffcanvas" aria-labelledby="tocOffcanvasLabel">
<div class="offcanvas-header">
<h5 class="offcanvas-title" id="tocOffcanvasLabel">Table of Contents</h5>
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" data-bs-target="#tocOffcanvas" aria-label="Close"></button>
</div>
<div class="offcanvas-body">
<nav class="toc" id="toc"></nav>
</div>
</div>
</div>
<div class="content">
<div class="actionbar">
<button class="btn btn-lg border-0 d-md-none" type="button" data-bs-toggle="offcanvas" data-bs-target="#tocOffcanvas" aria-controls="tocOffcanvas" aria-expanded="false" aria-label="Show table of contents">
<i class="bi bi-list"></i>
</button>
<nav id="breadcrumb"></nav>
</div>
<article data-uid="EchoHub.Core.DTOs.KickRequest">
<h1 id="EchoHub_Core_DTOs_KickRequest" data-uid="EchoHub.Core.DTOs.KickRequest" class="text-break">
Class KickRequest <a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h1>
<div class="facts text-secondary">
<dl><dt>Namespace</dt><dd><a class="xref" href="EchoHub.html">EchoHub</a>.<a class="xref" href="EchoHub.Core.html">Core</a>.<a class="xref" href="EchoHub.Core.DTOs.html">DTOs</a></dd></dl>
<dl><dt>Assembly</dt><dd>EchoHub.Core.dll</dd></dl>
</div>
<div class="markdown summary"></div>
<div class="markdown conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public record KickRequest : IEquatable&lt;KickRequest&gt;</code></pre>
</div>
<dl class="typelist inheritance">
<dt>Inheritance</dt>
<dd>
<div><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object">object</a></div>
<div><span class="xref">KickRequest</span></div>
</dd>
</dl>
<dl class="typelist implements">
<dt>Implements</dt>
<dd>
<div><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.iequatable-1">IEquatable</a>&lt;<a class="xref" href="EchoHub.Core.DTOs.KickRequest.html">KickRequest</a>&gt;</div>
</dd>
</dl>
<dl class="typelist inheritedMembers">
<dt>Inherited Members</dt>
<dd>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.gettype">object.GetType()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.memberwiseclone">object.MemberwiseClone()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object-system-object)">object.Equals(object, object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.referenceequals">object.ReferenceEquals(object, object)</a>
</div>
</dd></dl>
<h2 class="section" id="constructors">Constructors
</h2>
<a id="EchoHub_Core_DTOs_KickRequest__ctor_" data-uid="EchoHub.Core.DTOs.KickRequest.#ctor*"></a>
<h3 id="EchoHub_Core_DTOs_KickRequest__ctor_EchoHub_Core_DTOs_KickRequest_" data-uid="EchoHub.Core.DTOs.KickRequest.#ctor(EchoHub.Core.DTOs.KickRequest)">
KickRequest(KickRequest)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">protected KickRequest(KickRequest original)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>original</code> <a class="xref" href="EchoHub.Core.DTOs.KickRequest.html">KickRequest</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_KickRequest__ctor_" data-uid="EchoHub.Core.DTOs.KickRequest.#ctor*"></a>
<h3 id="EchoHub_Core_DTOs_KickRequest__ctor_System_String_" data-uid="EchoHub.Core.DTOs.KickRequest.#ctor(System.String)">
KickRequest(string?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public KickRequest(string? Reason = null)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>Reason</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h2 class="section" id="properties">Properties
</h2>
<a id="EchoHub_Core_DTOs_KickRequest_EqualityContract_" data-uid="EchoHub.Core.DTOs.KickRequest.EqualityContract*"></a>
<h3 id="EchoHub_Core_DTOs_KickRequest_EqualityContract" data-uid="EchoHub.Core.DTOs.KickRequest.EqualityContract">
EqualityContract
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">protected virtual Type EqualityContract { get; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.type">Type</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_KickRequest_Reason_" data-uid="EchoHub.Core.DTOs.KickRequest.Reason*"></a>
<h3 id="EchoHub_Core_DTOs_KickRequest_Reason" data-uid="EchoHub.Core.DTOs.KickRequest.Reason">
Reason
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public string? Reason { get; init; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h2 class="section" id="methods">Methods
</h2>
<a id="EchoHub_Core_DTOs_KickRequest_Deconstruct_" data-uid="EchoHub.Core.DTOs.KickRequest.Deconstruct*"></a>
<h3 id="EchoHub_Core_DTOs_KickRequest_Deconstruct_System_String__" data-uid="EchoHub.Core.DTOs.KickRequest.Deconstruct(System.String@)">
Deconstruct(out string?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public void Deconstruct(out string? Reason)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>Reason</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_KickRequest_Equals_" data-uid="EchoHub.Core.DTOs.KickRequest.Equals*"></a>
<h3 id="EchoHub_Core_DTOs_KickRequest_Equals_EchoHub_Core_DTOs_KickRequest_" data-uid="EchoHub.Core.DTOs.KickRequest.Equals(EchoHub.Core.DTOs.KickRequest)">
Equals(KickRequest?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual bool Equals(KickRequest? other)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>other</code> <a class="xref" href="EchoHub.Core.DTOs.KickRequest.html">KickRequest</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_KickRequest_Equals_" data-uid="EchoHub.Core.DTOs.KickRequest.Equals*"></a>
<h3 id="EchoHub_Core_DTOs_KickRequest_Equals_System_Object_" data-uid="EchoHub.Core.DTOs.KickRequest.Equals(System.Object)">
Equals(object?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public override bool Equals(object? obj)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>obj</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object">object</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_KickRequest_GetHashCode_" data-uid="EchoHub.Core.DTOs.KickRequest.GetHashCode*"></a>
<h3 id="EchoHub_Core_DTOs_KickRequest_GetHashCode" data-uid="EchoHub.Core.DTOs.KickRequest.GetHashCode">
GetHashCode()
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public override int GetHashCode()</code></pre>
</div>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_KickRequest_PrintMembers_" data-uid="EchoHub.Core.DTOs.KickRequest.PrintMembers*"></a>
<h3 id="EchoHub_Core_DTOs_KickRequest_PrintMembers_System_Text_StringBuilder_" data-uid="EchoHub.Core.DTOs.KickRequest.PrintMembers(System.Text.StringBuilder)">
PrintMembers(StringBuilder)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">protected virtual bool PrintMembers(StringBuilder builder)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>builder</code> <span class="xref">StringBuilder</span></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_KickRequest_ToString_" data-uid="EchoHub.Core.DTOs.KickRequest.ToString*"></a>
<h3 id="EchoHub_Core_DTOs_KickRequest_ToString" data-uid="EchoHub.Core.DTOs.KickRequest.ToString">
ToString()
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public override string ToString()</code></pre>
</div>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h2 class="section" id="operators">Operators
</h2>
<a id="EchoHub_Core_DTOs_KickRequest_op_Equality_" data-uid="EchoHub.Core.DTOs.KickRequest.op_Equality*"></a>
<h3 id="EchoHub_Core_DTOs_KickRequest_op_Equality_EchoHub_Core_DTOs_KickRequest_EchoHub_Core_DTOs_KickRequest_" data-uid="EchoHub.Core.DTOs.KickRequest.op_Equality(EchoHub.Core.DTOs.KickRequest,EchoHub.Core.DTOs.KickRequest)">
operator ==(KickRequest?, KickRequest?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public static bool operator ==(KickRequest? left, KickRequest? right)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>left</code> <a class="xref" href="EchoHub.Core.DTOs.KickRequest.html">KickRequest</a></dt>
<dd></dd>
<dt><code>right</code> <a class="xref" href="EchoHub.Core.DTOs.KickRequest.html">KickRequest</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_KickRequest_op_Inequality_" data-uid="EchoHub.Core.DTOs.KickRequest.op_Inequality*"></a>
<h3 id="EchoHub_Core_DTOs_KickRequest_op_Inequality_EchoHub_Core_DTOs_KickRequest_EchoHub_Core_DTOs_KickRequest_" data-uid="EchoHub.Core.DTOs.KickRequest.op_Inequality(EchoHub.Core.DTOs.KickRequest,EchoHub.Core.DTOs.KickRequest)">
operator !=(KickRequest?, KickRequest?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public static bool operator !=(KickRequest? left, KickRequest? right)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>left</code> <a class="xref" href="EchoHub.Core.DTOs.KickRequest.html">KickRequest</a></dt>
<dd></dd>
<dt><code>right</code> <a class="xref" href="EchoHub.Core.DTOs.KickRequest.html">KickRequest</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
</article>
<div class="contribution d-print-none">
<a href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs" class="edit-link">Edit this page</a>
</div>
</div>
<div class="affix">
<nav id="affix"></nav>
</div>
</main>
<div class="container-xxl search-results" id="search-results"></div>
<footer class="border-top text-secondary">
<div class="container-xxl">
<div class="flex-fill">
<div class='footer-custom'><div class='footer-inner'><span class='footer-brand'>EchoHub</span><span class='footer-sep'>&middot;</span><a href='https://github.com/HueByte/EchoHub'>GitHub</a><span class='footer-sep'>&middot;</span><a href='https://echohub.voidcube.cloud'>Website</a><span class='footer-sep'>&middot;</span><span class='footer-credit'>Built with <a href='https://dotnet.github.io/docfx'>DocFX</a></span></div></div>
</div>
</div>
</footer>
</body>
</html>
+41 -6
View File
@@ -182,8 +182,8 @@ Class MessageDto <a class="header-action link-secondary" title="View source" hr
<a id="EchoHub_Core_DTOs_MessageDto__ctor_" data-uid="EchoHub.Core.DTOs.MessageDto.#ctor*"></a>
<h3 id="EchoHub_Core_DTOs_MessageDto__ctor_System_Guid_System_String_System_String_System_String_System_String_EchoHub_Core_Models_MessageType_System_String_System_String_System_DateTimeOffset_" data-uid="EchoHub.Core.DTOs.MessageDto.#ctor(System.Guid,System.String,System.String,System.String,System.String,EchoHub.Core.Models.MessageType,System.String,System.String,System.DateTimeOffset)">
MessageDto(Guid, string, string, string?, string, MessageType, string?, string?, DateTimeOffset)
<h3 id="EchoHub_Core_DTOs_MessageDto__ctor_System_Guid_System_String_System_String_System_String_System_String_EchoHub_Core_Models_MessageType_System_String_System_String_System_DateTimeOffset_System_Collections_Generic_List_EchoHub_Core_DTOs_EmbedDto__" data-uid="EchoHub.Core.DTOs.MessageDto.#ctor(System.Guid,System.String,System.String,System.String,System.String,EchoHub.Core.Models.MessageType,System.String,System.String,System.DateTimeOffset,System.Collections.Generic.List{EchoHub.Core.DTOs.EmbedDto})">
MessageDto(Guid, string, string, string?, string, MessageType, string?, string?, DateTimeOffset, List&lt;EmbedDto&gt;?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ChatDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
@@ -191,7 +191,7 @@ Class MessageDto <a class="header-action link-secondary" title="View source" hr
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public MessageDto(Guid Id, string Content, string SenderUsername, string? SenderNicknameColor, string ChannelName, MessageType Type, string? AttachmentUrl, string? AttachmentFileName, DateTimeOffset SentAt)</code></pre>
<pre><code class="lang-csharp hljs">public MessageDto(Guid Id, string Content, string SenderUsername, string? SenderNicknameColor, string ChannelName, MessageType Type, string? AttachmentUrl, string? AttachmentFileName, DateTimeOffset SentAt, List&lt;EmbedDto&gt;? Embeds = null)</code></pre>
</div>
<h4 class="section">Parameters</h4>
@@ -214,6 +214,8 @@ Class MessageDto <a class="header-action link-secondary" title="View source" hr
<dd></dd>
<dt><code>SentAt</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.datetimeoffset">DateTimeOffset</a></dt>
<dd></dd>
<dt><code>Embeds</code> <span class="xref">List</span>&lt;<a class="xref" href="EchoHub.Core.DTOs.EmbedDto.html">EmbedDto</a>&gt;</dt>
<dd></dd>
</dl>
@@ -355,6 +357,37 @@ Class MessageDto <a class="header-action link-secondary" title="View source" hr
<a id="EchoHub_Core_DTOs_MessageDto_Embeds_" data-uid="EchoHub.Core.DTOs.MessageDto.Embeds*"></a>
<h3 id="EchoHub_Core_DTOs_MessageDto_Embeds" data-uid="EchoHub.Core.DTOs.MessageDto.Embeds">
Embeds
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ChatDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public List&lt;EmbedDto&gt;? Embeds { get; init; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><span class="xref">List</span>&lt;<a class="xref" href="EchoHub.Core.DTOs.EmbedDto.html">EmbedDto</a>&gt;</dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_MessageDto_EqualityContract_" data-uid="EchoHub.Core.DTOs.MessageDto.EqualityContract*"></a>
<h3 id="EchoHub_Core_DTOs_MessageDto_EqualityContract" data-uid="EchoHub.Core.DTOs.MessageDto.EqualityContract">
@@ -547,8 +580,8 @@ Class MessageDto <a class="header-action link-secondary" title="View source" hr
<a id="EchoHub_Core_DTOs_MessageDto_Deconstruct_" data-uid="EchoHub.Core.DTOs.MessageDto.Deconstruct*"></a>
<h3 id="EchoHub_Core_DTOs_MessageDto_Deconstruct_System_Guid__System_String__System_String__System_String__System_String__EchoHub_Core_Models_MessageType__System_String__System_String__System_DateTimeOffset__" data-uid="EchoHub.Core.DTOs.MessageDto.Deconstruct(System.Guid@,System.String@,System.String@,System.String@,System.String@,EchoHub.Core.Models.MessageType@,System.String@,System.String@,System.DateTimeOffset@)">
Deconstruct(out Guid, out string, out string, out string?, out string, out MessageType, out string?, out string?, out DateTimeOffset)
<h3 id="EchoHub_Core_DTOs_MessageDto_Deconstruct_System_Guid__System_String__System_String__System_String__System_String__EchoHub_Core_Models_MessageType__System_String__System_String__System_DateTimeOffset__System_Collections_Generic_List_EchoHub_Core_DTOs_EmbedDto___" data-uid="EchoHub.Core.DTOs.MessageDto.Deconstruct(System.Guid@,System.String@,System.String@,System.String@,System.String@,EchoHub.Core.Models.MessageType@,System.String@,System.String@,System.DateTimeOffset@,System.Collections.Generic.List{EchoHub.Core.DTOs.EmbedDto}@)">
Deconstruct(out Guid, out string, out string, out string?, out string, out MessageType, out string?, out string?, out DateTimeOffset, out List&lt;EmbedDto&gt;?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ChatDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
@@ -556,7 +589,7 @@ Class MessageDto <a class="header-action link-secondary" title="View source" hr
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public void Deconstruct(out Guid Id, out string Content, out string SenderUsername, out string? SenderNicknameColor, out string ChannelName, out MessageType Type, out string? AttachmentUrl, out string? AttachmentFileName, out DateTimeOffset SentAt)</code></pre>
<pre><code class="lang-csharp hljs">public void Deconstruct(out Guid Id, out string Content, out string SenderUsername, out string? SenderNicknameColor, out string ChannelName, out MessageType Type, out string? AttachmentUrl, out string? AttachmentFileName, out DateTimeOffset SentAt, out List&lt;EmbedDto&gt;? Embeds)</code></pre>
</div>
<h4 class="section">Parameters</h4>
@@ -579,6 +612,8 @@ Class MessageDto <a class="header-action link-secondary" title="View source" hr
<dd></dd>
<dt><code>SentAt</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.datetimeoffset">DateTimeOffset</a></dt>
<dd></dd>
<dt><code>Embeds</code> <span class="xref">List</span>&lt;<a class="xref" href="EchoHub.Core.DTOs.EmbedDto.html">EmbedDto</a>&gt;</dt>
<dd></dd>
</dl>
+625
View File
@@ -0,0 +1,625 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Class MuteRequest | EchoHub Documentation </title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="title" content="Class MuteRequest | EchoHub Documentation ">
<link rel="icon" href="../../images/hue_icon.svg">
<link rel="stylesheet" href="../../public/docfx.min.css">
<link rel="stylesheet" href="../../public/main.css">
<meta name="docfx:navrel" content="../../toc.html">
<meta name="docfx:tocrel" content="../toc.html">
<meta name="docfx:rel" content="../../">
<meta name="docfx:docurl" content="https://github.com/HueByte/EchoHub/new/master/apiSpec/new?filename=EchoHub_Core_DTOs_MuteRequest.md&amp;value=---%0Auid%3A%20EchoHub.Core.DTOs.MuteRequest%0Asummary%3A%20&#39;*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax&#39;%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">
<meta name="loc:inThisArticle" content="In this article">
<meta name="loc:searchResultsCount" content="{count} results for &quot;{query}&quot;">
<meta name="loc:searchNoResults" content="No results for &quot;{query}&quot;">
<meta name="loc:tocFilter" content="Filter by title">
<meta name="loc:nextArticle" content="Next">
<meta name="loc:prevArticle" content="Previous">
<meta name="loc:themeLight" content="Light">
<meta name="loc:themeDark" content="Dark">
<meta name="loc:themeAuto" content="Auto">
<meta name="loc:changeTheme" content="Change theme">
<meta name="loc:copy" content="Copy">
<meta name="loc:downloadPdf" content="Download PDF">
<script type="module" src="./../../public/docfx.min.js"></script>
<script>
const theme = localStorage.getItem('theme') || 'auto'
document.documentElement.setAttribute('data-bs-theme', theme === 'auto' ? (window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light') : theme)
</script>
</head>
<body class="tex2jax_ignore" data-layout="" data-yaml-mime="ManagedReference">
<header class="bg-body border-bottom">
<nav id="autocollapse" class="navbar navbar-expand-md" role="navigation">
<div class="container-xxl flex-nowrap">
<a class="navbar-brand" href="../../index.html">
<img id="logo" class="svg" src="../../images/hue_icon.svg" alt="EchoHub">
EchoHub
</a>
<button class="btn btn-lg d-md-none border-0" type="button" data-bs-toggle="collapse" data-bs-target="#navpanel" aria-controls="navpanel" aria-expanded="false" aria-label="Toggle navigation">
<i class="bi bi-three-dots"></i>
</button>
<div class="collapse navbar-collapse" id="navpanel">
<div id="navbar">
<form class="search" role="search" id="search">
<i class="bi bi-search"></i>
<input class="form-control" id="search-query" type="search" disabled placeholder="Search" autocomplete="off" aria-label="Search">
</form>
</div>
</div>
</div>
</nav>
</header>
<main class="container-xxl">
<div class="toc-offcanvas">
<div class="offcanvas-md offcanvas-start" tabindex="-1" id="tocOffcanvas" aria-labelledby="tocOffcanvasLabel">
<div class="offcanvas-header">
<h5 class="offcanvas-title" id="tocOffcanvasLabel">Table of Contents</h5>
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" data-bs-target="#tocOffcanvas" aria-label="Close"></button>
</div>
<div class="offcanvas-body">
<nav class="toc" id="toc"></nav>
</div>
</div>
</div>
<div class="content">
<div class="actionbar">
<button class="btn btn-lg border-0 d-md-none" type="button" data-bs-toggle="offcanvas" data-bs-target="#tocOffcanvas" aria-controls="tocOffcanvas" aria-expanded="false" aria-label="Show table of contents">
<i class="bi bi-list"></i>
</button>
<nav id="breadcrumb"></nav>
</div>
<article data-uid="EchoHub.Core.DTOs.MuteRequest">
<h1 id="EchoHub_Core_DTOs_MuteRequest" data-uid="EchoHub.Core.DTOs.MuteRequest" class="text-break">
Class MuteRequest <a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h1>
<div class="facts text-secondary">
<dl><dt>Namespace</dt><dd><a class="xref" href="EchoHub.html">EchoHub</a>.<a class="xref" href="EchoHub.Core.html">Core</a>.<a class="xref" href="EchoHub.Core.DTOs.html">DTOs</a></dd></dl>
<dl><dt>Assembly</dt><dd>EchoHub.Core.dll</dd></dl>
</div>
<div class="markdown summary"></div>
<div class="markdown conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public record MuteRequest : IEquatable&lt;MuteRequest&gt;</code></pre>
</div>
<dl class="typelist inheritance">
<dt>Inheritance</dt>
<dd>
<div><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object">object</a></div>
<div><span class="xref">MuteRequest</span></div>
</dd>
</dl>
<dl class="typelist implements">
<dt>Implements</dt>
<dd>
<div><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.iequatable-1">IEquatable</a>&lt;<a class="xref" href="EchoHub.Core.DTOs.MuteRequest.html">MuteRequest</a>&gt;</div>
</dd>
</dl>
<dl class="typelist inheritedMembers">
<dt>Inherited Members</dt>
<dd>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.gettype">object.GetType()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.memberwiseclone">object.MemberwiseClone()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object-system-object)">object.Equals(object, object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.referenceequals">object.ReferenceEquals(object, object)</a>
</div>
</dd></dl>
<h2 class="section" id="constructors">Constructors
</h2>
<a id="EchoHub_Core_DTOs_MuteRequest__ctor_" data-uid="EchoHub.Core.DTOs.MuteRequest.#ctor*"></a>
<h3 id="EchoHub_Core_DTOs_MuteRequest__ctor_EchoHub_Core_DTOs_MuteRequest_" data-uid="EchoHub.Core.DTOs.MuteRequest.#ctor(EchoHub.Core.DTOs.MuteRequest)">
MuteRequest(MuteRequest)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">protected MuteRequest(MuteRequest original)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>original</code> <a class="xref" href="EchoHub.Core.DTOs.MuteRequest.html">MuteRequest</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_MuteRequest__ctor_" data-uid="EchoHub.Core.DTOs.MuteRequest.#ctor*"></a>
<h3 id="EchoHub_Core_DTOs_MuteRequest__ctor_System_String_System_Nullable_System_Int32__" data-uid="EchoHub.Core.DTOs.MuteRequest.#ctor(System.String,System.Nullable{System.Int32})">
MuteRequest(string?, int?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public MuteRequest(string? Reason = null, int? DurationMinutes = null)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>Reason</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>DurationMinutes</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a>?</dt>
<dd></dd>
</dl>
<h2 class="section" id="properties">Properties
</h2>
<a id="EchoHub_Core_DTOs_MuteRequest_DurationMinutes_" data-uid="EchoHub.Core.DTOs.MuteRequest.DurationMinutes*"></a>
<h3 id="EchoHub_Core_DTOs_MuteRequest_DurationMinutes" data-uid="EchoHub.Core.DTOs.MuteRequest.DurationMinutes">
DurationMinutes
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public int? DurationMinutes { get; init; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a>?</dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_MuteRequest_EqualityContract_" data-uid="EchoHub.Core.DTOs.MuteRequest.EqualityContract*"></a>
<h3 id="EchoHub_Core_DTOs_MuteRequest_EqualityContract" data-uid="EchoHub.Core.DTOs.MuteRequest.EqualityContract">
EqualityContract
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">protected virtual Type EqualityContract { get; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.type">Type</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_MuteRequest_Reason_" data-uid="EchoHub.Core.DTOs.MuteRequest.Reason*"></a>
<h3 id="EchoHub_Core_DTOs_MuteRequest_Reason" data-uid="EchoHub.Core.DTOs.MuteRequest.Reason">
Reason
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public string? Reason { get; init; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h2 class="section" id="methods">Methods
</h2>
<a id="EchoHub_Core_DTOs_MuteRequest_Deconstruct_" data-uid="EchoHub.Core.DTOs.MuteRequest.Deconstruct*"></a>
<h3 id="EchoHub_Core_DTOs_MuteRequest_Deconstruct_System_String__System_Nullable_System_Int32___" data-uid="EchoHub.Core.DTOs.MuteRequest.Deconstruct(System.String@,System.Nullable{System.Int32}@)">
Deconstruct(out string?, out int?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public void Deconstruct(out string? Reason, out int? DurationMinutes)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>Reason</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>DurationMinutes</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a>?</dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_MuteRequest_Equals_" data-uid="EchoHub.Core.DTOs.MuteRequest.Equals*"></a>
<h3 id="EchoHub_Core_DTOs_MuteRequest_Equals_EchoHub_Core_DTOs_MuteRequest_" data-uid="EchoHub.Core.DTOs.MuteRequest.Equals(EchoHub.Core.DTOs.MuteRequest)">
Equals(MuteRequest?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual bool Equals(MuteRequest? other)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>other</code> <a class="xref" href="EchoHub.Core.DTOs.MuteRequest.html">MuteRequest</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_MuteRequest_Equals_" data-uid="EchoHub.Core.DTOs.MuteRequest.Equals*"></a>
<h3 id="EchoHub_Core_DTOs_MuteRequest_Equals_System_Object_" data-uid="EchoHub.Core.DTOs.MuteRequest.Equals(System.Object)">
Equals(object?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public override bool Equals(object? obj)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>obj</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object">object</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_MuteRequest_GetHashCode_" data-uid="EchoHub.Core.DTOs.MuteRequest.GetHashCode*"></a>
<h3 id="EchoHub_Core_DTOs_MuteRequest_GetHashCode" data-uid="EchoHub.Core.DTOs.MuteRequest.GetHashCode">
GetHashCode()
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public override int GetHashCode()</code></pre>
</div>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_MuteRequest_PrintMembers_" data-uid="EchoHub.Core.DTOs.MuteRequest.PrintMembers*"></a>
<h3 id="EchoHub_Core_DTOs_MuteRequest_PrintMembers_System_Text_StringBuilder_" data-uid="EchoHub.Core.DTOs.MuteRequest.PrintMembers(System.Text.StringBuilder)">
PrintMembers(StringBuilder)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">protected virtual bool PrintMembers(StringBuilder builder)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>builder</code> <span class="xref">StringBuilder</span></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_MuteRequest_ToString_" data-uid="EchoHub.Core.DTOs.MuteRequest.ToString*"></a>
<h3 id="EchoHub_Core_DTOs_MuteRequest_ToString" data-uid="EchoHub.Core.DTOs.MuteRequest.ToString">
ToString()
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public override string ToString()</code></pre>
</div>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h2 class="section" id="operators">Operators
</h2>
<a id="EchoHub_Core_DTOs_MuteRequest_op_Equality_" data-uid="EchoHub.Core.DTOs.MuteRequest.op_Equality*"></a>
<h3 id="EchoHub_Core_DTOs_MuteRequest_op_Equality_EchoHub_Core_DTOs_MuteRequest_EchoHub_Core_DTOs_MuteRequest_" data-uid="EchoHub.Core.DTOs.MuteRequest.op_Equality(EchoHub.Core.DTOs.MuteRequest,EchoHub.Core.DTOs.MuteRequest)">
operator ==(MuteRequest?, MuteRequest?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public static bool operator ==(MuteRequest? left, MuteRequest? right)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>left</code> <a class="xref" href="EchoHub.Core.DTOs.MuteRequest.html">MuteRequest</a></dt>
<dd></dd>
<dt><code>right</code> <a class="xref" href="EchoHub.Core.DTOs.MuteRequest.html">MuteRequest</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_MuteRequest_op_Inequality_" data-uid="EchoHub.Core.DTOs.MuteRequest.op_Inequality*"></a>
<h3 id="EchoHub_Core_DTOs_MuteRequest_op_Inequality_EchoHub_Core_DTOs_MuteRequest_EchoHub_Core_DTOs_MuteRequest_" data-uid="EchoHub.Core.DTOs.MuteRequest.op_Inequality(EchoHub.Core.DTOs.MuteRequest,EchoHub.Core.DTOs.MuteRequest)">
operator !=(MuteRequest?, MuteRequest?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public static bool operator !=(MuteRequest? left, MuteRequest? right)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>left</code> <a class="xref" href="EchoHub.Core.DTOs.MuteRequest.html">MuteRequest</a></dt>
<dd></dd>
<dt><code>right</code> <a class="xref" href="EchoHub.Core.DTOs.MuteRequest.html">MuteRequest</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
</article>
<div class="contribution d-print-none">
<a href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ModerationDtos.cs" class="edit-link">Edit this page</a>
</div>
</div>
<div class="affix">
<nav id="affix"></nav>
</div>
</main>
<div class="container-xxl search-results" id="search-results"></div>
<footer class="border-top text-secondary">
<div class="container-xxl">
<div class="flex-fill">
<div class='footer-custom'><div class='footer-inner'><span class='footer-brand'>EchoHub</span><span class='footer-sep'>&middot;</span><a href='https://github.com/HueByte/EchoHub'>GitHub</a><span class='footer-sep'>&middot;</span><a href='https://echohub.voidcube.cloud'>Website</a><span class='footer-sep'>&middot;</span><span class='footer-credit'>Built with <a href='https://dotnet.github.io/docfx'>DocFX</a></span></div></div>
</div>
</div>
</footer>
</body>
</html>
@@ -182,8 +182,8 @@ Class UserPresenceDto <a class="header-action link-secondary" title="View sourc
<a id="EchoHub_Core_DTOs_UserPresenceDto__ctor_" data-uid="EchoHub.Core.DTOs.UserPresenceDto.#ctor*"></a>
<h3 id="EchoHub_Core_DTOs_UserPresenceDto__ctor_System_String_System_String_System_String_EchoHub_Core_Models_UserStatus_System_String_" data-uid="EchoHub.Core.DTOs.UserPresenceDto.#ctor(System.String,System.String,System.String,EchoHub.Core.Models.UserStatus,System.String)">
UserPresenceDto(string, string?, string?, UserStatus, string?)
<h3 id="EchoHub_Core_DTOs_UserPresenceDto__ctor_System_String_System_String_System_String_EchoHub_Core_Models_UserStatus_System_String_EchoHub_Core_Models_ServerRole_" data-uid="EchoHub.Core.DTOs.UserPresenceDto.#ctor(System.String,System.String,System.String,EchoHub.Core.Models.UserStatus,System.String,EchoHub.Core.Models.ServerRole)">
UserPresenceDto(string, string?, string?, UserStatus, string?, ServerRole)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ProfileDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
@@ -191,7 +191,7 @@ Class UserPresenceDto <a class="header-action link-secondary" title="View sourc
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public UserPresenceDto(string Username, string? DisplayName, string? NicknameColor, UserStatus Status, string? StatusMessage)</code></pre>
<pre><code class="lang-csharp hljs">public UserPresenceDto(string Username, string? DisplayName, string? NicknameColor, UserStatus Status, string? StatusMessage, ServerRole Role)</code></pre>
</div>
<h4 class="section">Parameters</h4>
@@ -206,6 +206,8 @@ Class UserPresenceDto <a class="header-action link-secondary" title="View sourc
<dd></dd>
<dt><code>StatusMessage</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>Role</code> <a class="xref" href="EchoHub.Core.Models.ServerRole.html">ServerRole</a></dt>
<dd></dd>
</dl>
@@ -316,6 +318,37 @@ Class UserPresenceDto <a class="header-action link-secondary" title="View sourc
<a id="EchoHub_Core_DTOs_UserPresenceDto_Role_" data-uid="EchoHub.Core.DTOs.UserPresenceDto.Role*"></a>
<h3 id="EchoHub_Core_DTOs_UserPresenceDto_Role" data-uid="EchoHub.Core.DTOs.UserPresenceDto.Role">
Role
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ProfileDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public ServerRole Role { get; init; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="EchoHub.Core.Models.ServerRole.html">ServerRole</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_UserPresenceDto_Status_" data-uid="EchoHub.Core.DTOs.UserPresenceDto.Status*"></a>
<h3 id="EchoHub_Core_DTOs_UserPresenceDto_Status" data-uid="EchoHub.Core.DTOs.UserPresenceDto.Status">
@@ -415,8 +448,8 @@ Class UserPresenceDto <a class="header-action link-secondary" title="View sourc
<a id="EchoHub_Core_DTOs_UserPresenceDto_Deconstruct_" data-uid="EchoHub.Core.DTOs.UserPresenceDto.Deconstruct*"></a>
<h3 id="EchoHub_Core_DTOs_UserPresenceDto_Deconstruct_System_String__System_String__System_String__EchoHub_Core_Models_UserStatus__System_String__" data-uid="EchoHub.Core.DTOs.UserPresenceDto.Deconstruct(System.String@,System.String@,System.String@,EchoHub.Core.Models.UserStatus@,System.String@)">
Deconstruct(out string, out string?, out string?, out UserStatus, out string?)
<h3 id="EchoHub_Core_DTOs_UserPresenceDto_Deconstruct_System_String__System_String__System_String__EchoHub_Core_Models_UserStatus__System_String__EchoHub_Core_Models_ServerRole__" data-uid="EchoHub.Core.DTOs.UserPresenceDto.Deconstruct(System.String@,System.String@,System.String@,EchoHub.Core.Models.UserStatus@,System.String@,EchoHub.Core.Models.ServerRole@)">
Deconstruct(out string, out string?, out string?, out UserStatus, out string?, out ServerRole)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ProfileDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
@@ -424,7 +457,7 @@ Class UserPresenceDto <a class="header-action link-secondary" title="View sourc
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public void Deconstruct(out string Username, out string? DisplayName, out string? NicknameColor, out UserStatus Status, out string? StatusMessage)</code></pre>
<pre><code class="lang-csharp hljs">public void Deconstruct(out string Username, out string? DisplayName, out string? NicknameColor, out UserStatus Status, out string? StatusMessage, out ServerRole Role)</code></pre>
</div>
<h4 class="section">Parameters</h4>
@@ -439,6 +472,8 @@ Class UserPresenceDto <a class="header-action link-secondary" title="View sourc
<dd></dd>
<dt><code>StatusMessage</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>Role</code> <a class="xref" href="EchoHub.Core.Models.ServerRole.html">ServerRole</a></dt>
<dd></dd>
</dl>
+41 -6
View File
@@ -182,8 +182,8 @@ Class UserProfileDto <a class="header-action link-secondary" title="View source
<a id="EchoHub_Core_DTOs_UserProfileDto__ctor_" data-uid="EchoHub.Core.DTOs.UserProfileDto.#ctor*"></a>
<h3 id="EchoHub_Core_DTOs_UserProfileDto__ctor_System_Guid_System_String_System_String_System_String_System_String_System_String_EchoHub_Core_Models_UserStatus_System_String_System_DateTimeOffset_System_DateTimeOffset_" data-uid="EchoHub.Core.DTOs.UserProfileDto.#ctor(System.Guid,System.String,System.String,System.String,System.String,System.String,EchoHub.Core.Models.UserStatus,System.String,System.DateTimeOffset,System.DateTimeOffset)">
UserProfileDto(Guid, string, string?, string?, string?, string?, UserStatus, string?, DateTimeOffset, DateTimeOffset)
<h3 id="EchoHub_Core_DTOs_UserProfileDto__ctor_System_Guid_System_String_System_String_System_String_System_String_System_String_EchoHub_Core_Models_UserStatus_System_String_EchoHub_Core_Models_ServerRole_System_DateTimeOffset_System_DateTimeOffset_" data-uid="EchoHub.Core.DTOs.UserProfileDto.#ctor(System.Guid,System.String,System.String,System.String,System.String,System.String,EchoHub.Core.Models.UserStatus,System.String,EchoHub.Core.Models.ServerRole,System.DateTimeOffset,System.DateTimeOffset)">
UserProfileDto(Guid, string, string?, string?, string?, string?, UserStatus, string?, ServerRole, DateTimeOffset, DateTimeOffset)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ProfileDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
@@ -191,7 +191,7 @@ Class UserProfileDto <a class="header-action link-secondary" title="View source
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public UserProfileDto(Guid Id, string Username, string? DisplayName, string? Bio, string? NicknameColor, string? AvatarAscii, UserStatus Status, string? StatusMessage, DateTimeOffset CreatedAt, DateTimeOffset LastSeenAt)</code></pre>
<pre><code class="lang-csharp hljs">public UserProfileDto(Guid Id, string Username, string? DisplayName, string? Bio, string? NicknameColor, string? AvatarAscii, UserStatus Status, string? StatusMessage, ServerRole Role, DateTimeOffset CreatedAt, DateTimeOffset LastSeenAt)</code></pre>
</div>
<h4 class="section">Parameters</h4>
@@ -212,6 +212,8 @@ Class UserProfileDto <a class="header-action link-secondary" title="View source
<dd></dd>
<dt><code>StatusMessage</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>Role</code> <a class="xref" href="EchoHub.Core.Models.ServerRole.html">ServerRole</a></dt>
<dd></dd>
<dt><code>CreatedAt</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.datetimeoffset">DateTimeOffset</a></dt>
<dd></dd>
<dt><code>LastSeenAt</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.datetimeoffset">DateTimeOffset</a></dt>
@@ -481,6 +483,37 @@ Class UserProfileDto <a class="header-action link-secondary" title="View source
<a id="EchoHub_Core_DTOs_UserProfileDto_Role_" data-uid="EchoHub.Core.DTOs.UserProfileDto.Role*"></a>
<h3 id="EchoHub_Core_DTOs_UserProfileDto_Role" data-uid="EchoHub.Core.DTOs.UserProfileDto.Role">
Role
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ProfileDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public ServerRole Role { get; init; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="EchoHub.Core.Models.ServerRole.html">ServerRole</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_DTOs_UserProfileDto_Status_" data-uid="EchoHub.Core.DTOs.UserProfileDto.Status*"></a>
<h3 id="EchoHub_Core_DTOs_UserProfileDto_Status" data-uid="EchoHub.Core.DTOs.UserProfileDto.Status">
@@ -580,8 +613,8 @@ Class UserProfileDto <a class="header-action link-secondary" title="View source
<a id="EchoHub_Core_DTOs_UserProfileDto_Deconstruct_" data-uid="EchoHub.Core.DTOs.UserProfileDto.Deconstruct*"></a>
<h3 id="EchoHub_Core_DTOs_UserProfileDto_Deconstruct_System_Guid__System_String__System_String__System_String__System_String__System_String__EchoHub_Core_Models_UserStatus__System_String__System_DateTimeOffset__System_DateTimeOffset__" data-uid="EchoHub.Core.DTOs.UserProfileDto.Deconstruct(System.Guid@,System.String@,System.String@,System.String@,System.String@,System.String@,EchoHub.Core.Models.UserStatus@,System.String@,System.DateTimeOffset@,System.DateTimeOffset@)">
Deconstruct(out Guid, out string, out string?, out string?, out string?, out string?, out UserStatus, out string?, out DateTimeOffset, out DateTimeOffset)
<h3 id="EchoHub_Core_DTOs_UserProfileDto_Deconstruct_System_Guid__System_String__System_String__System_String__System_String__System_String__EchoHub_Core_Models_UserStatus__System_String__EchoHub_Core_Models_ServerRole__System_DateTimeOffset__System_DateTimeOffset__" data-uid="EchoHub.Core.DTOs.UserProfileDto.Deconstruct(System.Guid@,System.String@,System.String@,System.String@,System.String@,System.String@,EchoHub.Core.Models.UserStatus@,System.String@,EchoHub.Core.Models.ServerRole@,System.DateTimeOffset@,System.DateTimeOffset@)">
Deconstruct(out Guid, out string, out string?, out string?, out string?, out string?, out UserStatus, out string?, out ServerRole, out DateTimeOffset, out DateTimeOffset)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ProfileDtos.cs"><i class="bi bi-code-slash"></i></a>
</h3>
@@ -589,7 +622,7 @@ Class UserProfileDto <a class="header-action link-secondary" title="View source
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public void Deconstruct(out Guid Id, out string Username, out string? DisplayName, out string? Bio, out string? NicknameColor, out string? AvatarAscii, out UserStatus Status, out string? StatusMessage, out DateTimeOffset CreatedAt, out DateTimeOffset LastSeenAt)</code></pre>
<pre><code class="lang-csharp hljs">public void Deconstruct(out Guid Id, out string Username, out string? DisplayName, out string? Bio, out string? NicknameColor, out string? AvatarAscii, out UserStatus Status, out string? StatusMessage, out ServerRole Role, out DateTimeOffset CreatedAt, out DateTimeOffset LastSeenAt)</code></pre>
</div>
<h4 class="section">Parameters</h4>
@@ -610,6 +643,8 @@ Class UserProfileDto <a class="header-action link-secondary" title="View source
<dd></dd>
<dt><code>StatusMessage</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>Role</code> <a class="xref" href="EchoHub.Core.Models.ServerRole.html">ServerRole</a></dt>
<dd></dd>
<dt><code>CreatedAt</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.datetimeoffset">DateTimeOffset</a></dt>
<dd></dd>
<dt><code>LastSeenAt</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.datetimeoffset">DateTimeOffset</a></dt>
+20
View File
@@ -94,10 +94,18 @@
<h3 id="classes">
Classes
</h3>
<dl class="jumplist">
<dt><a class="xref" href="EchoHub.Core.DTOs.AssignRoleRequest.html">AssignRoleRequest</a></dt>
<dd></dd>
</dl>
<dl class="jumplist">
<dt><a class="xref" href="EchoHub.Core.DTOs.AvatarUploadResponse.html">AvatarUploadResponse</a></dt>
<dd></dd>
</dl>
<dl class="jumplist">
<dt><a class="xref" href="EchoHub.Core.DTOs.BanRequest.html">BanRequest</a></dt>
<dd></dd>
</dl>
<dl class="jumplist">
<dt><a class="xref" href="EchoHub.Core.DTOs.ChannelDto.html">ChannelDto</a></dt>
<dd></dd>
@@ -106,10 +114,18 @@ Classes
<dt><a class="xref" href="EchoHub.Core.DTOs.CreateChannelRequest.html">CreateChannelRequest</a></dt>
<dd></dd>
</dl>
<dl class="jumplist">
<dt><a class="xref" href="EchoHub.Core.DTOs.EmbedDto.html">EmbedDto</a></dt>
<dd></dd>
</dl>
<dl class="jumplist">
<dt><a class="xref" href="EchoHub.Core.DTOs.ErrorResponse.html">ErrorResponse</a></dt>
<dd></dd>
</dl>
<dl class="jumplist">
<dt><a class="xref" href="EchoHub.Core.DTOs.KickRequest.html">KickRequest</a></dt>
<dd></dd>
</dl>
<dl class="jumplist">
<dt><a class="xref" href="EchoHub.Core.DTOs.LoginRequest.html">LoginRequest</a></dt>
<dd></dd>
@@ -122,6 +138,10 @@ Classes
<dt><a class="xref" href="EchoHub.Core.DTOs.MessageDto.html">MessageDto</a></dt>
<dd></dd>
</dl>
<dl class="jumplist">
<dt><a class="xref" href="EchoHub.Core.DTOs.MuteRequest.html">MuteRequest</a></dt>
<dd></dd>
</dl>
<dl class="jumplist">
<dt><a class="xref" href="EchoHub.Core.DTOs.PaginatedResponse-1.html">PaginatedResponse&lt;T&gt;</a></dt>
<dd></dd>
+31
View File
@@ -275,6 +275,37 @@ Class Channel <a class="header-action link-secondary" title="View source" href=
<a id="EchoHub_Core_Models_Channel_IsPublic_" data-uid="EchoHub.Core.Models.Channel.IsPublic*"></a>
<h3 id="EchoHub_Core_Models_Channel_IsPublic" data-uid="EchoHub.Core.Models.Channel.IsPublic">
IsPublic
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/Models/Channel.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public bool IsPublic { get; set; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_Models_Channel_Messages_" data-uid="EchoHub.Core.Models.Channel.Messages*"></a>
<h3 id="EchoHub_Core_Models_Channel_Messages" data-uid="EchoHub.Core.Models.Channel.Messages">
@@ -0,0 +1,303 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Class ChannelMembership | EchoHub Documentation </title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="title" content="Class ChannelMembership | EchoHub Documentation ">
<link rel="icon" href="../../images/hue_icon.svg">
<link rel="stylesheet" href="../../public/docfx.min.css">
<link rel="stylesheet" href="../../public/main.css">
<meta name="docfx:navrel" content="../../toc.html">
<meta name="docfx:tocrel" content="../toc.html">
<meta name="docfx:rel" content="../../">
<meta name="docfx:docurl" content="https://github.com/HueByte/EchoHub/new/master/apiSpec/new?filename=EchoHub_Core_Models_ChannelMembership.md&amp;value=---%0Auid%3A%20EchoHub.Core.Models.ChannelMembership%0Asummary%3A%20&#39;*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax&#39;%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">
<meta name="loc:inThisArticle" content="In this article">
<meta name="loc:searchResultsCount" content="{count} results for &quot;{query}&quot;">
<meta name="loc:searchNoResults" content="No results for &quot;{query}&quot;">
<meta name="loc:tocFilter" content="Filter by title">
<meta name="loc:nextArticle" content="Next">
<meta name="loc:prevArticle" content="Previous">
<meta name="loc:themeLight" content="Light">
<meta name="loc:themeDark" content="Dark">
<meta name="loc:themeAuto" content="Auto">
<meta name="loc:changeTheme" content="Change theme">
<meta name="loc:copy" content="Copy">
<meta name="loc:downloadPdf" content="Download PDF">
<script type="module" src="./../../public/docfx.min.js"></script>
<script>
const theme = localStorage.getItem('theme') || 'auto'
document.documentElement.setAttribute('data-bs-theme', theme === 'auto' ? (window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light') : theme)
</script>
</head>
<body class="tex2jax_ignore" data-layout="" data-yaml-mime="ManagedReference">
<header class="bg-body border-bottom">
<nav id="autocollapse" class="navbar navbar-expand-md" role="navigation">
<div class="container-xxl flex-nowrap">
<a class="navbar-brand" href="../../index.html">
<img id="logo" class="svg" src="../../images/hue_icon.svg" alt="EchoHub">
EchoHub
</a>
<button class="btn btn-lg d-md-none border-0" type="button" data-bs-toggle="collapse" data-bs-target="#navpanel" aria-controls="navpanel" aria-expanded="false" aria-label="Toggle navigation">
<i class="bi bi-three-dots"></i>
</button>
<div class="collapse navbar-collapse" id="navpanel">
<div id="navbar">
<form class="search" role="search" id="search">
<i class="bi bi-search"></i>
<input class="form-control" id="search-query" type="search" disabled placeholder="Search" autocomplete="off" aria-label="Search">
</form>
</div>
</div>
</div>
</nav>
</header>
<main class="container-xxl">
<div class="toc-offcanvas">
<div class="offcanvas-md offcanvas-start" tabindex="-1" id="tocOffcanvas" aria-labelledby="tocOffcanvasLabel">
<div class="offcanvas-header">
<h5 class="offcanvas-title" id="tocOffcanvasLabel">Table of Contents</h5>
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" data-bs-target="#tocOffcanvas" aria-label="Close"></button>
</div>
<div class="offcanvas-body">
<nav class="toc" id="toc"></nav>
</div>
</div>
</div>
<div class="content">
<div class="actionbar">
<button class="btn btn-lg border-0 d-md-none" type="button" data-bs-toggle="offcanvas" data-bs-target="#tocOffcanvas" aria-controls="tocOffcanvas" aria-expanded="false" aria-label="Show table of contents">
<i class="bi bi-list"></i>
</button>
<nav id="breadcrumb"></nav>
</div>
<article data-uid="EchoHub.Core.Models.ChannelMembership">
<h1 id="EchoHub_Core_Models_ChannelMembership" data-uid="EchoHub.Core.Models.ChannelMembership" class="text-break">
Class ChannelMembership <a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/Models/ChannelMembership.cs"><i class="bi bi-code-slash"></i></a>
</h1>
<div class="facts text-secondary">
<dl><dt>Namespace</dt><dd><a class="xref" href="EchoHub.html">EchoHub</a>.<a class="xref" href="EchoHub.Core.html">Core</a>.<a class="xref" href="EchoHub.Core.Models.html">Models</a></dd></dl>
<dl><dt>Assembly</dt><dd>EchoHub.Core.dll</dd></dl>
</div>
<div class="markdown summary"></div>
<div class="markdown conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public class ChannelMembership</code></pre>
</div>
<dl class="typelist inheritance">
<dt>Inheritance</dt>
<dd>
<div><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object">object</a></div>
<div><span class="xref">ChannelMembership</span></div>
</dd>
</dl>
<dl class="typelist inheritedMembers">
<dt>Inherited Members</dt>
<dd>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.gettype">object.GetType()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.memberwiseclone">object.MemberwiseClone()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.tostring">object.ToString()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object)">object.Equals(object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object-system-object)">object.Equals(object, object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.referenceequals">object.ReferenceEquals(object, object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.gethashcode">object.GetHashCode()</a>
</div>
</dd></dl>
<h2 class="section" id="constructors">Constructors
</h2>
<a id="EchoHub_Core_Models_ChannelMembership__ctor_" data-uid="EchoHub.Core.Models.ChannelMembership.#ctor*"></a>
<h3 id="EchoHub_Core_Models_ChannelMembership__ctor" data-uid="EchoHub.Core.Models.ChannelMembership.#ctor">
ChannelMembership()
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/Models/ChannelMembership.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public ChannelMembership()</code></pre>
</div>
<h2 class="section" id="properties">Properties
</h2>
<a id="EchoHub_Core_Models_ChannelMembership_ChannelId_" data-uid="EchoHub.Core.Models.ChannelMembership.ChannelId*"></a>
<h3 id="EchoHub_Core_Models_ChannelMembership_ChannelId" data-uid="EchoHub.Core.Models.ChannelMembership.ChannelId">
ChannelId
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/Models/ChannelMembership.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public Guid ChannelId { get; set; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.guid">Guid</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_Models_ChannelMembership_JoinedAt_" data-uid="EchoHub.Core.Models.ChannelMembership.JoinedAt*"></a>
<h3 id="EchoHub_Core_Models_ChannelMembership_JoinedAt" data-uid="EchoHub.Core.Models.ChannelMembership.JoinedAt">
JoinedAt
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/Models/ChannelMembership.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public DateTimeOffset JoinedAt { get; set; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.datetimeoffset">DateTimeOffset</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_Models_ChannelMembership_UserId_" data-uid="EchoHub.Core.Models.ChannelMembership.UserId*"></a>
<h3 id="EchoHub_Core_Models_ChannelMembership_UserId" data-uid="EchoHub.Core.Models.ChannelMembership.UserId">
UserId
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/Models/ChannelMembership.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public Guid UserId { get; set; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.guid">Guid</a></dt>
<dd></dd>
</dl>
</article>
<div class="contribution d-print-none">
<a href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/Models/ChannelMembership.cs" class="edit-link">Edit this page</a>
</div>
</div>
<div class="affix">
<nav id="affix"></nav>
</div>
</main>
<div class="container-xxl search-results" id="search-results"></div>
<footer class="border-top text-secondary">
<div class="container-xxl">
<div class="flex-fill">
<div class='footer-custom'><div class='footer-inner'><span class='footer-brand'>EchoHub</span><span class='footer-sep'>&middot;</span><a href='https://github.com/HueByte/EchoHub'>GitHub</a><span class='footer-sep'>&middot;</span><a href='https://echohub.voidcube.cloud'>Website</a><span class='footer-sep'>&middot;</span><span class='footer-credit'>Built with <a href='https://dotnet.github.io/docfx'>DocFX</a></span></div></div>
</div>
</div>
</footer>
</body>
</html>
+31
View File
@@ -337,6 +337,37 @@ Class Message <a class="header-action link-secondary" title="View source" href=
<a id="EchoHub_Core_Models_Message_EmbedJson_" data-uid="EchoHub.Core.Models.Message.EmbedJson*"></a>
<h3 id="EchoHub_Core_Models_Message_EmbedJson" data-uid="EchoHub.Core.Models.Message.EmbedJson">
EmbedJson
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/Models/Message.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public string? EmbedJson { get; set; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_Models_Message_Id_" data-uid="EchoHub.Core.Models.Message.Id*"></a>
<h3 id="EchoHub_Core_Models_Message_Id" data-uid="EchoHub.Core.Models.Message.Id">
@@ -0,0 +1,159 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Enum ServerRole | EchoHub Documentation </title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="title" content="Enum ServerRole | EchoHub Documentation ">
<link rel="icon" href="../../images/hue_icon.svg">
<link rel="stylesheet" href="../../public/docfx.min.css">
<link rel="stylesheet" href="../../public/main.css">
<meta name="docfx:navrel" content="../../toc.html">
<meta name="docfx:tocrel" content="../toc.html">
<meta name="docfx:rel" content="../../">
<meta name="docfx:docurl" content="https://github.com/HueByte/EchoHub/new/master/apiSpec/new?filename=EchoHub_Core_Models_ServerRole.md&amp;value=---%0Auid%3A%20EchoHub.Core.Models.ServerRole%0Asummary%3A%20&#39;*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax&#39;%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">
<meta name="loc:inThisArticle" content="In this article">
<meta name="loc:searchResultsCount" content="{count} results for &quot;{query}&quot;">
<meta name="loc:searchNoResults" content="No results for &quot;{query}&quot;">
<meta name="loc:tocFilter" content="Filter by title">
<meta name="loc:nextArticle" content="Next">
<meta name="loc:prevArticle" content="Previous">
<meta name="loc:themeLight" content="Light">
<meta name="loc:themeDark" content="Dark">
<meta name="loc:themeAuto" content="Auto">
<meta name="loc:changeTheme" content="Change theme">
<meta name="loc:copy" content="Copy">
<meta name="loc:downloadPdf" content="Download PDF">
<script type="module" src="./../../public/docfx.min.js"></script>
<script>
const theme = localStorage.getItem('theme') || 'auto'
document.documentElement.setAttribute('data-bs-theme', theme === 'auto' ? (window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light') : theme)
</script>
</head>
<body class="tex2jax_ignore" data-layout="" data-yaml-mime="ManagedReference">
<header class="bg-body border-bottom">
<nav id="autocollapse" class="navbar navbar-expand-md" role="navigation">
<div class="container-xxl flex-nowrap">
<a class="navbar-brand" href="../../index.html">
<img id="logo" class="svg" src="../../images/hue_icon.svg" alt="EchoHub">
EchoHub
</a>
<button class="btn btn-lg d-md-none border-0" type="button" data-bs-toggle="collapse" data-bs-target="#navpanel" aria-controls="navpanel" aria-expanded="false" aria-label="Toggle navigation">
<i class="bi bi-three-dots"></i>
</button>
<div class="collapse navbar-collapse" id="navpanel">
<div id="navbar">
<form class="search" role="search" id="search">
<i class="bi bi-search"></i>
<input class="form-control" id="search-query" type="search" disabled placeholder="Search" autocomplete="off" aria-label="Search">
</form>
</div>
</div>
</div>
</nav>
</header>
<main class="container-xxl">
<div class="toc-offcanvas">
<div class="offcanvas-md offcanvas-start" tabindex="-1" id="tocOffcanvas" aria-labelledby="tocOffcanvasLabel">
<div class="offcanvas-header">
<h5 class="offcanvas-title" id="tocOffcanvasLabel">Table of Contents</h5>
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" data-bs-target="#tocOffcanvas" aria-label="Close"></button>
</div>
<div class="offcanvas-body">
<nav class="toc" id="toc"></nav>
</div>
</div>
</div>
<div class="content">
<div class="actionbar">
<button class="btn btn-lg border-0 d-md-none" type="button" data-bs-toggle="offcanvas" data-bs-target="#tocOffcanvas" aria-controls="tocOffcanvas" aria-expanded="false" aria-label="Show table of contents">
<i class="bi bi-list"></i>
</button>
<nav id="breadcrumb"></nav>
</div>
<article data-uid="EchoHub.Core.Models.ServerRole">
<h1 id="EchoHub_Core_Models_ServerRole" data-uid="EchoHub.Core.Models.ServerRole" class="text-break">
Enum ServerRole <a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/Models/ServerRole.cs"><i class="bi bi-code-slash"></i></a>
</h1>
<div class="facts text-secondary">
<dl><dt>Namespace</dt><dd><a class="xref" href="EchoHub.html">EchoHub</a>.<a class="xref" href="EchoHub.Core.html">Core</a>.<a class="xref" href="EchoHub.Core.Models.html">Models</a></dd></dl>
<dl><dt>Assembly</dt><dd>EchoHub.Core.dll</dd></dl>
</div>
<div class="markdown summary"></div>
<div class="markdown conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public enum ServerRole</code></pre>
</div>
<h2 id="fields">Fields
</h2>
<dl class="parameters">
<dt id="EchoHub_Core_Models_ServerRole_Admin"><code>Admin = 2</code></dt>
<dd></dd>
<dt id="EchoHub_Core_Models_ServerRole_Member"><code>Member = 0</code></dt>
<dd></dd>
<dt id="EchoHub_Core_Models_ServerRole_Mod"><code>Mod = 1</code></dt>
<dd></dd>
<dt id="EchoHub_Core_Models_ServerRole_Owner"><code>Owner = 3</code></dt>
<dd></dd>
</dl>
</article>
<div class="contribution d-print-none">
<a href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/Models/ServerRole.cs" class="edit-link">Edit this page</a>
</div>
</div>
<div class="affix">
<nav id="affix"></nav>
</div>
</main>
<div class="container-xxl search-results" id="search-results"></div>
<footer class="border-top text-secondary">
<div class="container-xxl">
<div class="flex-fill">
<div class='footer-custom'><div class='footer-inner'><span class='footer-brand'>EchoHub</span><span class='footer-sep'>&middot;</span><a href='https://github.com/HueByte/EchoHub'>GitHub</a><span class='footer-sep'>&middot;</span><a href='https://echohub.voidcube.cloud'>Website</a><span class='footer-sep'>&middot;</span><span class='footer-credit'>Built with <a href='https://dotnet.github.io/docfx'>DocFX</a></span></div></div>
</div>
</div>
</footer>
</body>
</html>
+124
View File
@@ -337,6 +337,68 @@ Class User <a class="header-action link-secondary" title="View source" href="ht
<a id="EchoHub_Core_Models_User_IsBanned_" data-uid="EchoHub.Core.Models.User.IsBanned*"></a>
<h3 id="EchoHub_Core_Models_User_IsBanned" data-uid="EchoHub.Core.Models.User.IsBanned">
IsBanned
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/Models/User.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public bool IsBanned { get; set; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_Models_User_IsMuted_" data-uid="EchoHub.Core.Models.User.IsMuted*"></a>
<h3 id="EchoHub_Core_Models_User_IsMuted" data-uid="EchoHub.Core.Models.User.IsMuted">
IsMuted
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/Models/User.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public bool IsMuted { get; set; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_Models_User_LastSeenAt_" data-uid="EchoHub.Core.Models.User.LastSeenAt*"></a>
<h3 id="EchoHub_Core_Models_User_LastSeenAt" data-uid="EchoHub.Core.Models.User.LastSeenAt">
@@ -368,6 +430,37 @@ Class User <a class="header-action link-secondary" title="View source" href="ht
<a id="EchoHub_Core_Models_User_MutedUntil_" data-uid="EchoHub.Core.Models.User.MutedUntil*"></a>
<h3 id="EchoHub_Core_Models_User_MutedUntil" data-uid="EchoHub.Core.Models.User.MutedUntil">
MutedUntil
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/Models/User.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public DateTimeOffset? MutedUntil { get; set; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.datetimeoffset">DateTimeOffset</a>?</dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_Models_User_NicknameColor_" data-uid="EchoHub.Core.Models.User.NicknameColor*"></a>
<h3 id="EchoHub_Core_Models_User_NicknameColor" data-uid="EchoHub.Core.Models.User.NicknameColor">
@@ -430,6 +523,37 @@ Class User <a class="header-action link-secondary" title="View source" href="ht
<a id="EchoHub_Core_Models_User_Role_" data-uid="EchoHub.Core.Models.User.Role*"></a>
<h3 id="EchoHub_Core_Models_User_Role" data-uid="EchoHub.Core.Models.User.Role">
Role
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/Models/User.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public ServerRole Role { get; set; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><a class="xref" href="EchoHub.Core.Models.ServerRole.html">ServerRole</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Core_Models_User_Status_" data-uid="EchoHub.Core.Models.User.Status*"></a>
<h3 id="EchoHub_Core_Models_User_Status" data-uid="EchoHub.Core.Models.User.Status">
+8
View File
@@ -98,6 +98,10 @@ Classes
<dt><a class="xref" href="EchoHub.Core.Models.Channel.html">Channel</a></dt>
<dd></dd>
</dl>
<dl class="jumplist">
<dt><a class="xref" href="EchoHub.Core.Models.ChannelMembership.html">ChannelMembership</a></dt>
<dd></dd>
</dl>
<dl class="jumplist">
<dt><a class="xref" href="EchoHub.Core.Models.Message.html">Message</a></dt>
<dd></dd>
@@ -117,6 +121,10 @@ Enums
<dt><a class="xref" href="EchoHub.Core.Models.MessageType.html">MessageType</a></dt>
<dd></dd>
</dl>
<dl class="jumplist">
<dt><a class="xref" href="EchoHub.Core.Models.ServerRole.html">ServerRole</a></dt>
<dd></dd>
</dl>
<dl class="jumplist">
<dt><a class="xref" href="EchoHub.Core.Models.UserStatus.html">UserStatus</a></dt>
<dd></dd>
@@ -193,6 +193,80 @@ Class IrcBroadcaster <a class="header-action link-secondary" title="View source
</h2>
<a id="EchoHub_Server_Irc_IrcBroadcaster_ForceDisconnectUserAsync_" data-uid="EchoHub.Server.Irc.IrcBroadcaster.ForceDisconnectUserAsync*"></a>
<h3 id="EchoHub_Server_Irc_IrcBroadcaster_ForceDisconnectUserAsync_System_Collections_Generic_List_System_String__System_String_" data-uid="EchoHub.Server.Irc.IrcBroadcaster.ForceDisconnectUserAsync(System.Collections.Generic.List{System.String},System.String)">
ForceDisconnectUserAsync(List&lt;string&gt;, string)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server.Irc/IrcBroadcaster.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public Task ForceDisconnectUserAsync(List&lt;string&gt; connectionIds, string reason)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>connectionIds</code> <span class="xref">List</span>&lt;<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a>&gt;</dt>
<dd></dd>
<dt><code>reason</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">Task</span></dt>
<dd></dd>
</dl>
<a id="EchoHub_Server_Irc_IrcBroadcaster_SendChannelNukedAsync_" data-uid="EchoHub.Server.Irc.IrcBroadcaster.SendChannelNukedAsync*"></a>
<h3 id="EchoHub_Server_Irc_IrcBroadcaster_SendChannelNukedAsync_System_String_" data-uid="EchoHub.Server.Irc.IrcBroadcaster.SendChannelNukedAsync(System.String)">
SendChannelNukedAsync(string)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server.Irc/IrcBroadcaster.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public Task SendChannelNukedAsync(string channelName)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>channelName</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">Task</span></dt>
<dd></dd>
</dl>
<a id="EchoHub_Server_Irc_IrcBroadcaster_SendChannelUpdatedAsync_" data-uid="EchoHub.Server.Irc.IrcBroadcaster.SendChannelUpdatedAsync*"></a>
<h3 id="EchoHub_Server_Irc_IrcBroadcaster_SendChannelUpdatedAsync_EchoHub_Core_DTOs_ChannelDto_System_String_" data-uid="EchoHub.Server.Irc.IrcBroadcaster.SendChannelUpdatedAsync(EchoHub.Core.DTOs.ChannelDto,System.String)">
@@ -269,6 +343,44 @@ Class IrcBroadcaster <a class="header-action link-secondary" title="View source
<a id="EchoHub_Server_Irc_IrcBroadcaster_SendMessageDeletedAsync_" data-uid="EchoHub.Server.Irc.IrcBroadcaster.SendMessageDeletedAsync*"></a>
<h3 id="EchoHub_Server_Irc_IrcBroadcaster_SendMessageDeletedAsync_System_String_System_Guid_" data-uid="EchoHub.Server.Irc.IrcBroadcaster.SendMessageDeletedAsync(System.String,System.Guid)">
SendMessageDeletedAsync(string, Guid)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server.Irc/IrcBroadcaster.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public Task SendMessageDeletedAsync(string channelName, Guid messageId)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>channelName</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>messageId</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.guid">Guid</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">Task</span></dt>
<dd></dd>
</dl>
<a id="EchoHub_Server_Irc_IrcBroadcaster_SendMessageToChannelAsync_" data-uid="EchoHub.Server.Irc.IrcBroadcaster.SendMessageToChannelAsync*"></a>
<h3 id="EchoHub_Server_Irc_IrcBroadcaster_SendMessageToChannelAsync_System_String_EchoHub_Core_DTOs_MessageDto_" data-uid="EchoHub.Server.Irc.IrcBroadcaster.SendMessageToChannelAsync(System.String,EchoHub.Core.DTOs.MessageDto)">
@@ -307,6 +419,44 @@ Class IrcBroadcaster <a class="header-action link-secondary" title="View source
<a id="EchoHub_Server_Irc_IrcBroadcaster_SendUserBannedAsync_" data-uid="EchoHub.Server.Irc.IrcBroadcaster.SendUserBannedAsync*"></a>
<h3 id="EchoHub_Server_Irc_IrcBroadcaster_SendUserBannedAsync_System_String_System_String_" data-uid="EchoHub.Server.Irc.IrcBroadcaster.SendUserBannedAsync(System.String,System.String)">
SendUserBannedAsync(string, string?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server.Irc/IrcBroadcaster.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public Task SendUserBannedAsync(string username, string? reason)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>username</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>reason</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">Task</span></dt>
<dd></dd>
</dl>
<a id="EchoHub_Server_Irc_IrcBroadcaster_SendUserJoinedAsync_" data-uid="EchoHub.Server.Irc.IrcBroadcaster.SendUserJoinedAsync*"></a>
<h3 id="EchoHub_Server_Irc_IrcBroadcaster_SendUserJoinedAsync_System_String_System_String_System_String_" data-uid="EchoHub.Server.Irc.IrcBroadcaster.SendUserJoinedAsync(System.String,System.String,System.String)">
@@ -347,6 +497,46 @@ Class IrcBroadcaster <a class="header-action link-secondary" title="View source
<a id="EchoHub_Server_Irc_IrcBroadcaster_SendUserKickedAsync_" data-uid="EchoHub.Server.Irc.IrcBroadcaster.SendUserKickedAsync*"></a>
<h3 id="EchoHub_Server_Irc_IrcBroadcaster_SendUserKickedAsync_System_String_System_String_System_String_" data-uid="EchoHub.Server.Irc.IrcBroadcaster.SendUserKickedAsync(System.String,System.String,System.String)">
SendUserKickedAsync(string, string, string?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server.Irc/IrcBroadcaster.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public Task SendUserKickedAsync(string channelName, string username, string? reason)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>channelName</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>username</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>reason</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">Task</span></dt>
<dd></dd>
</dl>
<a id="EchoHub_Server_Irc_IrcBroadcaster_SendUserLeftAsync_" data-uid="EchoHub.Server.Irc.IrcBroadcaster.SendUserLeftAsync*"></a>
<h3 id="EchoHub_Server_Irc_IrcBroadcaster_SendUserLeftAsync_System_String_System_String_" data-uid="EchoHub.Server.Irc.IrcBroadcaster.SendUserLeftAsync(System.String,System.String)">
@@ -297,6 +297,37 @@ Class IrcGatewayService <a class="header-action link-secondary" title="View sou
<a id="EchoHub_Server_Irc_IrcGatewayService_GetAllConnections_" data-uid="EchoHub.Server.Irc.IrcGatewayService.GetAllConnections*"></a>
<h3 id="EchoHub_Server_Irc_IrcGatewayService_GetAllConnections" data-uid="EchoHub.Server.Irc.IrcGatewayService.GetAllConnections">
GetAllConnections()
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server.Irc/IrcGatewayService.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public IEnumerable&lt;IrcClientConnection&gt; GetAllConnections()</code></pre>
</div>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">IEnumerable</span>&lt;<a class="xref" href="EchoHub.Server.Irc.IrcClientConnection.html">IrcClientConnection</a>&gt;</dt>
<dd></dd>
</dl>
<a id="EchoHub_Server_Irc_IrcGatewayService_GetConnectionsInChannel_" data-uid="EchoHub.Server.Irc.IrcGatewayService.GetConnectionsInChannel*"></a>
<h3 id="EchoHub_Server_Irc_IrcGatewayService_GetConnectionsInChannel_System_String_" data-uid="EchoHub.Server.Irc.IrcGatewayService.GetConnectionsInChannel(System.String)">
@@ -152,6 +152,44 @@ Class IrcMessageFormatter <a class="header-action link-secondary" title="View s
</h2>
<a id="EchoHub_Server_Irc_IrcMessageFormatter_ColorTagsToAnsi_" data-uid="EchoHub.Server.Irc.IrcMessageFormatter.ColorTagsToAnsi*"></a>
<h3 id="EchoHub_Server_Irc_IrcMessageFormatter_ColorTagsToAnsi_System_String_" data-uid="EchoHub.Server.Irc.IrcMessageFormatter.ColorTagsToAnsi(System.String)">
ColorTagsToAnsi(string)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server.Irc/IrcMessageFormatter.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"><p>Convert printable color tags ({F:RRGGBB}, {B:RRGGBB}, {X}) to ANSI escape codes for IRC clients.
Also passes through content that already uses ANSI codes unchanged.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public static string ColorTagsToAnsi(string text)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>text</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Server_Irc_IrcMessageFormatter_FormatMessage_" data-uid="EchoHub.Server.Irc.IrcMessageFormatter.FormatMessage*"></a>
<h3 id="EchoHub_Server_Irc_IrcMessageFormatter_FormatMessage_EchoHub_Core_DTOs_MessageDto_" data-uid="EchoHub.Server.Irc.IrcMessageFormatter.FormatMessage(EchoHub.Core.DTOs.MessageDto)">
@@ -315,8 +315,8 @@ public Task&lt;IActionResult&gt; GetChannels(int offset = 0, int limit = 50)</co
<a id="EchoHub_Server_Controllers_ChannelsController_SendUrl_" data-uid="EchoHub.Server.Controllers.ChannelsController.SendUrl*"></a>
<h3 id="EchoHub_Server_Controllers_ChannelsController_SendUrl_System_String_EchoHub_Core_DTOs_SendUrlRequest_" data-uid="EchoHub.Server.Controllers.ChannelsController.SendUrl(System.String,EchoHub.Core.DTOs.SendUrlRequest)">
SendUrl(string, SendUrlRequest)
<h3 id="EchoHub_Server_Controllers_ChannelsController_SendUrl_System_String_EchoHub_Core_DTOs_SendUrlRequest_System_String_" data-uid="EchoHub.Server.Controllers.ChannelsController.SendUrl(System.String,EchoHub.Core.DTOs.SendUrlRequest,System.String)">
SendUrl(string, SendUrlRequest, string?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Controllers/ChannelsController.cs"><i class="bi bi-code-slash"></i></a>
</h3>
@@ -326,7 +326,7 @@ public Task&lt;IActionResult&gt; GetChannels(int offset = 0, int limit = 50)</co
<div class="codewrapper">
<pre><code class="lang-csharp hljs">[HttpPost(&quot;{channel}/send-url&quot;)]
[EnableRateLimiting(&quot;upload&quot;)]
public Task&lt;IActionResult&gt; SendUrl(string channel, SendUrlRequest request)</code></pre>
public Task&lt;IActionResult&gt; SendUrl(string channel, SendUrlRequest request, string? size = null)</code></pre>
</div>
<h4 class="section">Parameters</h4>
@@ -335,6 +335,8 @@ public Task&lt;IActionResult&gt; SendUrl(string channel, SendUrlRequest request)
<dd></dd>
<dt><code>request</code> <a class="xref" href="../core/EchoHub.Core.DTOs.SendUrlRequest.html">SendUrlRequest</a></dt>
<dd></dd>
<dt><code>size</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
@@ -394,8 +396,8 @@ public Task&lt;IActionResult&gt; UpdateTopic(string channel, UpdateTopicRequest
<a id="EchoHub_Server_Controllers_ChannelsController_Upload_" data-uid="EchoHub.Server.Controllers.ChannelsController.Upload*"></a>
<h3 id="EchoHub_Server_Controllers_ChannelsController_Upload_System_String_" data-uid="EchoHub.Server.Controllers.ChannelsController.Upload(System.String)">
Upload(string)
<h3 id="EchoHub_Server_Controllers_ChannelsController_Upload_System_String_System_String_" data-uid="EchoHub.Server.Controllers.ChannelsController.Upload(System.String,System.String)">
Upload(string, string?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Controllers/ChannelsController.cs"><i class="bi bi-code-slash"></i></a>
</h3>
@@ -405,13 +407,15 @@ public Task&lt;IActionResult&gt; UpdateTopic(string channel, UpdateTopicRequest
<div class="codewrapper">
<pre><code class="lang-csharp hljs">[HttpPost(&quot;{channel}/upload&quot;)]
[EnableRateLimiting(&quot;upload&quot;)]
public Task&lt;IActionResult&gt; Upload(string channel)</code></pre>
public Task&lt;IActionResult&gt; Upload(string channel, string? size = null)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>channel</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>size</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
@@ -0,0 +1,528 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Class ModerationController | EchoHub Documentation </title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="title" content="Class ModerationController | EchoHub Documentation ">
<link rel="icon" href="../../images/hue_icon.svg">
<link rel="stylesheet" href="../../public/docfx.min.css">
<link rel="stylesheet" href="../../public/main.css">
<meta name="docfx:navrel" content="../../toc.html">
<meta name="docfx:tocrel" content="../toc.html">
<meta name="docfx:rel" content="../../">
<meta name="docfx:docurl" content="https://github.com/HueByte/EchoHub/new/master/apiSpec/new?filename=EchoHub_Server_Controllers_ModerationController.md&amp;value=---%0Auid%3A%20EchoHub.Server.Controllers.ModerationController%0Asummary%3A%20&#39;*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax&#39;%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">
<meta name="loc:inThisArticle" content="In this article">
<meta name="loc:searchResultsCount" content="{count} results for &quot;{query}&quot;">
<meta name="loc:searchNoResults" content="No results for &quot;{query}&quot;">
<meta name="loc:tocFilter" content="Filter by title">
<meta name="loc:nextArticle" content="Next">
<meta name="loc:prevArticle" content="Previous">
<meta name="loc:themeLight" content="Light">
<meta name="loc:themeDark" content="Dark">
<meta name="loc:themeAuto" content="Auto">
<meta name="loc:changeTheme" content="Change theme">
<meta name="loc:copy" content="Copy">
<meta name="loc:downloadPdf" content="Download PDF">
<script type="module" src="./../../public/docfx.min.js"></script>
<script>
const theme = localStorage.getItem('theme') || 'auto'
document.documentElement.setAttribute('data-bs-theme', theme === 'auto' ? (window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light') : theme)
</script>
</head>
<body class="tex2jax_ignore" data-layout="" data-yaml-mime="ManagedReference">
<header class="bg-body border-bottom">
<nav id="autocollapse" class="navbar navbar-expand-md" role="navigation">
<div class="container-xxl flex-nowrap">
<a class="navbar-brand" href="../../index.html">
<img id="logo" class="svg" src="../../images/hue_icon.svg" alt="EchoHub">
EchoHub
</a>
<button class="btn btn-lg d-md-none border-0" type="button" data-bs-toggle="collapse" data-bs-target="#navpanel" aria-controls="navpanel" aria-expanded="false" aria-label="Toggle navigation">
<i class="bi bi-three-dots"></i>
</button>
<div class="collapse navbar-collapse" id="navpanel">
<div id="navbar">
<form class="search" role="search" id="search">
<i class="bi bi-search"></i>
<input class="form-control" id="search-query" type="search" disabled placeholder="Search" autocomplete="off" aria-label="Search">
</form>
</div>
</div>
</div>
</nav>
</header>
<main class="container-xxl">
<div class="toc-offcanvas">
<div class="offcanvas-md offcanvas-start" tabindex="-1" id="tocOffcanvas" aria-labelledby="tocOffcanvasLabel">
<div class="offcanvas-header">
<h5 class="offcanvas-title" id="tocOffcanvasLabel">Table of Contents</h5>
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" data-bs-target="#tocOffcanvas" aria-label="Close"></button>
</div>
<div class="offcanvas-body">
<nav class="toc" id="toc"></nav>
</div>
</div>
</div>
<div class="content">
<div class="actionbar">
<button class="btn btn-lg border-0 d-md-none" type="button" data-bs-toggle="offcanvas" data-bs-target="#tocOffcanvas" aria-controls="tocOffcanvas" aria-expanded="false" aria-label="Show table of contents">
<i class="bi bi-list"></i>
</button>
<nav id="breadcrumb"></nav>
</div>
<article data-uid="EchoHub.Server.Controllers.ModerationController">
<h1 id="EchoHub_Server_Controllers_ModerationController" data-uid="EchoHub.Server.Controllers.ModerationController" class="text-break">
Class ModerationController <a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Controllers/ModerationController.cs"><i class="bi bi-code-slash"></i></a>
</h1>
<div class="facts text-secondary">
<dl><dt>Namespace</dt><dd><a class="xref" href="EchoHub.html">EchoHub</a>.<a class="xref" href="EchoHub.Server.html">Server</a>.<a class="xref" href="EchoHub.Server.Controllers.html">Controllers</a></dd></dl>
<dl><dt>Assembly</dt><dd>EchoHub.Server.dll</dd></dl>
</div>
<div class="markdown summary"></div>
<div class="markdown conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">[ApiController]
[Route(&quot;api/moderation&quot;)]
[Authorize]
[EnableRateLimiting(&quot;general&quot;)]
public class ModerationController : ControllerBase</code></pre>
</div>
<dl class="typelist inheritance">
<dt>Inheritance</dt>
<dd>
<div><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object">object</a></div>
<div><span class="xref">ControllerBase</span></div>
<div><span class="xref">ModerationController</span></div>
</dd>
</dl>
<dl class="typelist inheritedMembers">
<dt>Inherited Members</dt>
<dd>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.gettype">object.GetType()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.memberwiseclone">object.MemberwiseClone()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.tostring">object.ToString()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object)">object.Equals(object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object-system-object)">object.Equals(object, object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.referenceequals">object.ReferenceEquals(object, object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.gethashcode">object.GetHashCode()</a>
</div>
</dd></dl>
<h2 class="section" id="constructors">Constructors
</h2>
<a id="EchoHub_Server_Controllers_ModerationController__ctor_" data-uid="EchoHub.Server.Controllers.ModerationController.#ctor*"></a>
<h3 id="EchoHub_Server_Controllers_ModerationController__ctor_EchoHub_Server_Data_EchoHubDbContext_EchoHub_Core_Contracts_IChatService_EchoHub_Server_Services_PresenceTracker_System_Collections_Generic_IEnumerable_EchoHub_Core_Contracts_IChatBroadcaster__" data-uid="EchoHub.Server.Controllers.ModerationController.#ctor(EchoHub.Server.Data.EchoHubDbContext,EchoHub.Core.Contracts.IChatService,EchoHub.Server.Services.PresenceTracker,System.Collections.Generic.IEnumerable{EchoHub.Core.Contracts.IChatBroadcaster})">
ModerationController(EchoHubDbContext, IChatService, PresenceTracker, IEnumerable&lt;IChatBroadcaster&gt;)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Controllers/ModerationController.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public ModerationController(EchoHubDbContext db, IChatService chatService, PresenceTracker presenceTracker, IEnumerable&lt;IChatBroadcaster&gt; broadcasters)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>db</code> <a class="xref" href="EchoHub.Server.Data.EchoHubDbContext.html">EchoHubDbContext</a></dt>
<dd></dd>
<dt><code>chatService</code> <a class="xref" href="../core/EchoHub.Core.Contracts.IChatService.html">IChatService</a></dt>
<dd></dd>
<dt><code>presenceTracker</code> <a class="xref" href="EchoHub.Server.Services.PresenceTracker.html">PresenceTracker</a></dt>
<dd></dd>
<dt><code>broadcasters</code> <span class="xref">IEnumerable</span>&lt;<a class="xref" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/Contracts/IChatBroadcaster.cs">IChatBroadcaster</a>&gt;</dt>
<dd></dd>
</dl>
<h2 class="section" id="methods">Methods
</h2>
<a id="EchoHub_Server_Controllers_ModerationController_AssignRole_" data-uid="EchoHub.Server.Controllers.ModerationController.AssignRole*"></a>
<h3 id="EchoHub_Server_Controllers_ModerationController_AssignRole_EchoHub_Core_DTOs_AssignRoleRequest_" data-uid="EchoHub.Server.Controllers.ModerationController.AssignRole(EchoHub.Core.DTOs.AssignRoleRequest)">
AssignRole(AssignRoleRequest)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Controllers/ModerationController.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">[HttpPost(&quot;role&quot;)]
public Task&lt;IActionResult&gt; AssignRole(AssignRoleRequest request)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>request</code> <a class="xref" href="../core/EchoHub.Core.DTOs.AssignRoleRequest.html">AssignRoleRequest</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">Task</span>&lt;<span class="xref">IActionResult</span>&gt;</dt>
<dd></dd>
</dl>
<a id="EchoHub_Server_Controllers_ModerationController_BanUser_" data-uid="EchoHub.Server.Controllers.ModerationController.BanUser*"></a>
<h3 id="EchoHub_Server_Controllers_ModerationController_BanUser_System_String_EchoHub_Core_DTOs_BanRequest_" data-uid="EchoHub.Server.Controllers.ModerationController.BanUser(System.String,EchoHub.Core.DTOs.BanRequest)">
BanUser(string, BanRequest?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Controllers/ModerationController.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">[HttpPost(&quot;ban/{username}&quot;)]
public Task&lt;IActionResult&gt; BanUser(string username, BanRequest? request = null)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>username</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>request</code> <a class="xref" href="../core/EchoHub.Core.DTOs.BanRequest.html">BanRequest</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">Task</span>&lt;<span class="xref">IActionResult</span>&gt;</dt>
<dd></dd>
</dl>
<a id="EchoHub_Server_Controllers_ModerationController_DeleteMessage_" data-uid="EchoHub.Server.Controllers.ModerationController.DeleteMessage*"></a>
<h3 id="EchoHub_Server_Controllers_ModerationController_DeleteMessage_System_Guid_" data-uid="EchoHub.Server.Controllers.ModerationController.DeleteMessage(System.Guid)">
DeleteMessage(Guid)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Controllers/ModerationController.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">[HttpDelete(&quot;messages/{messageId:guid}&quot;)]
public Task&lt;IActionResult&gt; DeleteMessage(Guid messageId)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>messageId</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.guid">Guid</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">Task</span>&lt;<span class="xref">IActionResult</span>&gt;</dt>
<dd></dd>
</dl>
<a id="EchoHub_Server_Controllers_ModerationController_KickUser_" data-uid="EchoHub.Server.Controllers.ModerationController.KickUser*"></a>
<h3 id="EchoHub_Server_Controllers_ModerationController_KickUser_System_String_EchoHub_Core_DTOs_KickRequest_" data-uid="EchoHub.Server.Controllers.ModerationController.KickUser(System.String,EchoHub.Core.DTOs.KickRequest)">
KickUser(string, KickRequest?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Controllers/ModerationController.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">[HttpPost(&quot;kick/{username}&quot;)]
public Task&lt;IActionResult&gt; KickUser(string username, KickRequest? request = null)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>username</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>request</code> <a class="xref" href="../core/EchoHub.Core.DTOs.KickRequest.html">KickRequest</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">Task</span>&lt;<span class="xref">IActionResult</span>&gt;</dt>
<dd></dd>
</dl>
<a id="EchoHub_Server_Controllers_ModerationController_MuteUser_" data-uid="EchoHub.Server.Controllers.ModerationController.MuteUser*"></a>
<h3 id="EchoHub_Server_Controllers_ModerationController_MuteUser_System_String_EchoHub_Core_DTOs_MuteRequest_" data-uid="EchoHub.Server.Controllers.ModerationController.MuteUser(System.String,EchoHub.Core.DTOs.MuteRequest)">
MuteUser(string, MuteRequest?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Controllers/ModerationController.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">[HttpPost(&quot;mute/{username}&quot;)]
public Task&lt;IActionResult&gt; MuteUser(string username, MuteRequest? request = null)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>username</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>request</code> <a class="xref" href="../core/EchoHub.Core.DTOs.MuteRequest.html">MuteRequest</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">Task</span>&lt;<span class="xref">IActionResult</span>&gt;</dt>
<dd></dd>
</dl>
<a id="EchoHub_Server_Controllers_ModerationController_NukeChannel_" data-uid="EchoHub.Server.Controllers.ModerationController.NukeChannel*"></a>
<h3 id="EchoHub_Server_Controllers_ModerationController_NukeChannel_System_String_" data-uid="EchoHub.Server.Controllers.ModerationController.NukeChannel(System.String)">
NukeChannel(string)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Controllers/ModerationController.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">[HttpDelete(&quot;channels/{channel}/nuke&quot;)]
public Task&lt;IActionResult&gt; NukeChannel(string channel)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>channel</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">Task</span>&lt;<span class="xref">IActionResult</span>&gt;</dt>
<dd></dd>
</dl>
<a id="EchoHub_Server_Controllers_ModerationController_UnbanUser_" data-uid="EchoHub.Server.Controllers.ModerationController.UnbanUser*"></a>
<h3 id="EchoHub_Server_Controllers_ModerationController_UnbanUser_System_String_" data-uid="EchoHub.Server.Controllers.ModerationController.UnbanUser(System.String)">
UnbanUser(string)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Controllers/ModerationController.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">[HttpPost(&quot;unban/{username}&quot;)]
public Task&lt;IActionResult&gt; UnbanUser(string username)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>username</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">Task</span>&lt;<span class="xref">IActionResult</span>&gt;</dt>
<dd></dd>
</dl>
<a id="EchoHub_Server_Controllers_ModerationController_UnmuteUser_" data-uid="EchoHub.Server.Controllers.ModerationController.UnmuteUser*"></a>
<h3 id="EchoHub_Server_Controllers_ModerationController_UnmuteUser_System_String_" data-uid="EchoHub.Server.Controllers.ModerationController.UnmuteUser(System.String)">
UnmuteUser(string)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Controllers/ModerationController.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">[HttpPost(&quot;unmute/{username}&quot;)]
public Task&lt;IActionResult&gt; UnmuteUser(string username)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>username</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">Task</span>&lt;<span class="xref">IActionResult</span>&gt;</dt>
<dd></dd>
</dl>
</article>
<div class="contribution d-print-none">
<a href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Controllers/ModerationController.cs" class="edit-link">Edit this page</a>
</div>
</div>
<div class="affix">
<nav id="affix"></nav>
</div>
</main>
<div class="container-xxl search-results" id="search-results"></div>
<footer class="border-top text-secondary">
<div class="container-xxl">
<div class="flex-fill">
<div class='footer-custom'><div class='footer-inner'><span class='footer-brand'>EchoHub</span><span class='footer-sep'>&middot;</span><a href='https://github.com/HueByte/EchoHub'>GitHub</a><span class='footer-sep'>&middot;</span><a href='https://echohub.voidcube.cloud'>Website</a><span class='footer-sep'>&middot;</span><span class='footer-credit'>Built with <a href='https://dotnet.github.io/docfx'>DocFX</a></span></div></div>
</div>
</div>
</footer>
</body>
</html>
@@ -106,6 +106,10 @@ Classes
<dt><a class="xref" href="EchoHub.Server.Controllers.FilesController.html">FilesController</a></dt>
<dd></dd>
</dl>
<dl class="jumplist">
<dt><a class="xref" href="EchoHub.Server.Controllers.ModerationController.html">ModerationController</a></dt>
<dd></dd>
</dl>
<dl class="jumplist">
<dt><a class="xref" href="EchoHub.Server.Controllers.ServerController.html">ServerController</a></dt>
<dd></dd>
@@ -195,6 +195,37 @@ Class EchoHubDbContext <a class="header-action link-secondary" title="View sour
</h2>
<a id="EchoHub_Server_Data_EchoHubDbContext_ChannelMemberships_" data-uid="EchoHub.Server.Data.EchoHubDbContext.ChannelMemberships*"></a>
<h3 id="EchoHub_Server_Data_EchoHubDbContext_ChannelMemberships" data-uid="EchoHub.Server.Data.EchoHubDbContext.ChannelMemberships">
ChannelMemberships
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Data/EchoHubDbContext.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public DbSet&lt;ChannelMembership&gt; ChannelMemberships { get; }</code></pre>
</div>
<h4 class="section">Property Value</h4>
<dl class="parameters">
<dt><span class="xref">DbSet</span>&lt;<a class="xref" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/Models/ChannelMembership.cs">ChannelMembership</a>&gt;</dt>
<dd></dd>
</dl>
<a id="EchoHub_Server_Data_EchoHubDbContext_Channels_" data-uid="EchoHub.Server.Data.EchoHubDbContext.Channels*"></a>
<h3 id="EchoHub_Server_Data_EchoHubDbContext_Channels" data-uid="EchoHub.Server.Data.EchoHubDbContext.Channels">
@@ -0,0 +1,306 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Class AddChannelIsPublic | EchoHub Documentation </title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="title" content="Class AddChannelIsPublic | EchoHub Documentation ">
<link rel="icon" href="../../images/hue_icon.svg">
<link rel="stylesheet" href="../../public/docfx.min.css">
<link rel="stylesheet" href="../../public/main.css">
<meta name="docfx:navrel" content="../../toc.html">
<meta name="docfx:tocrel" content="../toc.html">
<meta name="docfx:rel" content="../../">
<meta name="docfx:docurl" content="https://github.com/HueByte/EchoHub/new/master/apiSpec/new?filename=EchoHub_Server_Data_Migrations_AddChannelIsPublic.md&amp;value=---%0Auid%3A%20EchoHub.Server.Data.Migrations.AddChannelIsPublic%0Asummary%3A%20&#39;*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax&#39;%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">
<meta name="loc:inThisArticle" content="In this article">
<meta name="loc:searchResultsCount" content="{count} results for &quot;{query}&quot;">
<meta name="loc:searchNoResults" content="No results for &quot;{query}&quot;">
<meta name="loc:tocFilter" content="Filter by title">
<meta name="loc:nextArticle" content="Next">
<meta name="loc:prevArticle" content="Previous">
<meta name="loc:themeLight" content="Light">
<meta name="loc:themeDark" content="Dark">
<meta name="loc:themeAuto" content="Auto">
<meta name="loc:changeTheme" content="Change theme">
<meta name="loc:copy" content="Copy">
<meta name="loc:downloadPdf" content="Download PDF">
<script type="module" src="./../../public/docfx.min.js"></script>
<script>
const theme = localStorage.getItem('theme') || 'auto'
document.documentElement.setAttribute('data-bs-theme', theme === 'auto' ? (window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light') : theme)
</script>
</head>
<body class="tex2jax_ignore" data-layout="" data-yaml-mime="ManagedReference">
<header class="bg-body border-bottom">
<nav id="autocollapse" class="navbar navbar-expand-md" role="navigation">
<div class="container-xxl flex-nowrap">
<a class="navbar-brand" href="../../index.html">
<img id="logo" class="svg" src="../../images/hue_icon.svg" alt="EchoHub">
EchoHub
</a>
<button class="btn btn-lg d-md-none border-0" type="button" data-bs-toggle="collapse" data-bs-target="#navpanel" aria-controls="navpanel" aria-expanded="false" aria-label="Toggle navigation">
<i class="bi bi-three-dots"></i>
</button>
<div class="collapse navbar-collapse" id="navpanel">
<div id="navbar">
<form class="search" role="search" id="search">
<i class="bi bi-search"></i>
<input class="form-control" id="search-query" type="search" disabled placeholder="Search" autocomplete="off" aria-label="Search">
</form>
</div>
</div>
</div>
</nav>
</header>
<main class="container-xxl">
<div class="toc-offcanvas">
<div class="offcanvas-md offcanvas-start" tabindex="-1" id="tocOffcanvas" aria-labelledby="tocOffcanvasLabel">
<div class="offcanvas-header">
<h5 class="offcanvas-title" id="tocOffcanvasLabel">Table of Contents</h5>
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" data-bs-target="#tocOffcanvas" aria-label="Close"></button>
</div>
<div class="offcanvas-body">
<nav class="toc" id="toc"></nav>
</div>
</div>
</div>
<div class="content">
<div class="actionbar">
<button class="btn btn-lg border-0 d-md-none" type="button" data-bs-toggle="offcanvas" data-bs-target="#tocOffcanvas" aria-controls="tocOffcanvas" aria-expanded="false" aria-label="Show table of contents">
<i class="bi bi-list"></i>
</button>
<nav id="breadcrumb"></nav>
</div>
<article data-uid="EchoHub.Server.Data.Migrations.AddChannelIsPublic">
<h1 id="EchoHub_Server_Data_Migrations_AddChannelIsPublic" data-uid="EchoHub.Server.Data.Migrations.AddChannelIsPublic" class="text-break">
Class AddChannelIsPublic <a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Data/Migrations/20260219172834_AddChannelIsPublic.Designer.cs"><i class="bi bi-code-slash"></i></a>
</h1>
<div class="facts text-secondary">
<dl><dt>Namespace</dt><dd><a class="xref" href="EchoHub.html">EchoHub</a>.<a class="xref" href="EchoHub.Server.html">Server</a>.<a class="xref" href="EchoHub.Server.Data.html">Data</a>.<a class="xref" href="EchoHub.Server.Data.Migrations.html">Migrations</a></dd></dl>
<dl><dt>Assembly</dt><dd>EchoHub.Server.dll</dd></dl>
</div>
<div class="markdown summary"></div>
<div class="markdown conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">[DbContext(typeof(EchoHubDbContext))]
[Migration(&quot;20260219172834_AddChannelIsPublic&quot;)]
public class AddChannelIsPublic : Migration</code></pre>
</div>
<dl class="typelist inheritance">
<dt>Inheritance</dt>
<dd>
<div><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object">object</a></div>
<div><span class="xref">Migration</span></div>
<div><span class="xref">AddChannelIsPublic</span></div>
</dd>
</dl>
<dl class="typelist inheritedMembers">
<dt>Inherited Members</dt>
<dd>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.gettype">object.GetType()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.memberwiseclone">object.MemberwiseClone()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.tostring">object.ToString()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object)">object.Equals(object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object-system-object)">object.Equals(object, object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.referenceequals">object.ReferenceEquals(object, object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.gethashcode">object.GetHashCode()</a>
</div>
</dd></dl>
<h2 class="section" id="constructors">Constructors
</h2>
<a id="EchoHub_Server_Data_Migrations_AddChannelIsPublic__ctor_" data-uid="EchoHub.Server.Data.Migrations.AddChannelIsPublic.#ctor*"></a>
<h3 id="EchoHub_Server_Data_Migrations_AddChannelIsPublic__ctor" data-uid="EchoHub.Server.Data.Migrations.AddChannelIsPublic.#ctor">
AddChannelIsPublic()
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Data/Migrations/20260219172834_AddChannelIsPublic.Designer.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public AddChannelIsPublic()</code></pre>
</div>
<h2 class="section" id="methods">Methods
</h2>
<a id="EchoHub_Server_Data_Migrations_AddChannelIsPublic_BuildTargetModel_" data-uid="EchoHub.Server.Data.Migrations.AddChannelIsPublic.BuildTargetModel*"></a>
<h3 id="EchoHub_Server_Data_Migrations_AddChannelIsPublic_BuildTargetModel_Microsoft_EntityFrameworkCore_ModelBuilder_" data-uid="EchoHub.Server.Data.Migrations.AddChannelIsPublic.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
BuildTargetModel(ModelBuilder)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Data/Migrations/20260219172834_AddChannelIsPublic.Designer.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">protected override void BuildTargetModel(ModelBuilder modelBuilder)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>modelBuilder</code> <span class="xref">ModelBuilder</span></dt>
<dd></dd>
</dl>
<a id="EchoHub_Server_Data_Migrations_AddChannelIsPublic_Down_" data-uid="EchoHub.Server.Data.Migrations.AddChannelIsPublic.Down*"></a>
<h3 id="EchoHub_Server_Data_Migrations_AddChannelIsPublic_Down_Microsoft_EntityFrameworkCore_Migrations_MigrationBuilder_" data-uid="EchoHub.Server.Data.Migrations.AddChannelIsPublic.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
Down(MigrationBuilder)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Data/Migrations/20260219172834_AddChannelIsPublic.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">protected override void Down(MigrationBuilder migrationBuilder)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>migrationBuilder</code> <span class="xref">MigrationBuilder</span></dt>
<dd></dd>
</dl>
<a id="EchoHub_Server_Data_Migrations_AddChannelIsPublic_Up_" data-uid="EchoHub.Server.Data.Migrations.AddChannelIsPublic.Up*"></a>
<h3 id="EchoHub_Server_Data_Migrations_AddChannelIsPublic_Up_Microsoft_EntityFrameworkCore_Migrations_MigrationBuilder_" data-uid="EchoHub.Server.Data.Migrations.AddChannelIsPublic.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
Up(MigrationBuilder)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Data/Migrations/20260219172834_AddChannelIsPublic.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">protected override void Up(MigrationBuilder migrationBuilder)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>migrationBuilder</code> <span class="xref">MigrationBuilder</span></dt>
<dd></dd>
</dl>
</article>
<div class="contribution d-print-none">
<a href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Data/Migrations/20260219172834_AddChannelIsPublic.Designer.cs" class="edit-link">Edit this page</a>
</div>
</div>
<div class="affix">
<nav id="affix"></nav>
</div>
</main>
<div class="container-xxl search-results" id="search-results"></div>
<footer class="border-top text-secondary">
<div class="container-xxl">
<div class="flex-fill">
<div class='footer-custom'><div class='footer-inner'><span class='footer-brand'>EchoHub</span><span class='footer-sep'>&middot;</span><a href='https://github.com/HueByte/EchoHub'>GitHub</a><span class='footer-sep'>&middot;</span><a href='https://echohub.voidcube.cloud'>Website</a><span class='footer-sep'>&middot;</span><span class='footer-credit'>Built with <a href='https://dotnet.github.io/docfx'>DocFX</a></span></div></div>
</div>
</div>
</footer>
</body>
</html>
@@ -0,0 +1,306 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Class AddChannelMembership | EchoHub Documentation </title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="title" content="Class AddChannelMembership | EchoHub Documentation ">
<link rel="icon" href="../../images/hue_icon.svg">
<link rel="stylesheet" href="../../public/docfx.min.css">
<link rel="stylesheet" href="../../public/main.css">
<meta name="docfx:navrel" content="../../toc.html">
<meta name="docfx:tocrel" content="../toc.html">
<meta name="docfx:rel" content="../../">
<meta name="docfx:docurl" content="https://github.com/HueByte/EchoHub/new/master/apiSpec/new?filename=EchoHub_Server_Data_Migrations_AddChannelMembership.md&amp;value=---%0Auid%3A%20EchoHub.Server.Data.Migrations.AddChannelMembership%0Asummary%3A%20&#39;*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax&#39;%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">
<meta name="loc:inThisArticle" content="In this article">
<meta name="loc:searchResultsCount" content="{count} results for &quot;{query}&quot;">
<meta name="loc:searchNoResults" content="No results for &quot;{query}&quot;">
<meta name="loc:tocFilter" content="Filter by title">
<meta name="loc:nextArticle" content="Next">
<meta name="loc:prevArticle" content="Previous">
<meta name="loc:themeLight" content="Light">
<meta name="loc:themeDark" content="Dark">
<meta name="loc:themeAuto" content="Auto">
<meta name="loc:changeTheme" content="Change theme">
<meta name="loc:copy" content="Copy">
<meta name="loc:downloadPdf" content="Download PDF">
<script type="module" src="./../../public/docfx.min.js"></script>
<script>
const theme = localStorage.getItem('theme') || 'auto'
document.documentElement.setAttribute('data-bs-theme', theme === 'auto' ? (window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light') : theme)
</script>
</head>
<body class="tex2jax_ignore" data-layout="" data-yaml-mime="ManagedReference">
<header class="bg-body border-bottom">
<nav id="autocollapse" class="navbar navbar-expand-md" role="navigation">
<div class="container-xxl flex-nowrap">
<a class="navbar-brand" href="../../index.html">
<img id="logo" class="svg" src="../../images/hue_icon.svg" alt="EchoHub">
EchoHub
</a>
<button class="btn btn-lg d-md-none border-0" type="button" data-bs-toggle="collapse" data-bs-target="#navpanel" aria-controls="navpanel" aria-expanded="false" aria-label="Toggle navigation">
<i class="bi bi-three-dots"></i>
</button>
<div class="collapse navbar-collapse" id="navpanel">
<div id="navbar">
<form class="search" role="search" id="search">
<i class="bi bi-search"></i>
<input class="form-control" id="search-query" type="search" disabled placeholder="Search" autocomplete="off" aria-label="Search">
</form>
</div>
</div>
</div>
</nav>
</header>
<main class="container-xxl">
<div class="toc-offcanvas">
<div class="offcanvas-md offcanvas-start" tabindex="-1" id="tocOffcanvas" aria-labelledby="tocOffcanvasLabel">
<div class="offcanvas-header">
<h5 class="offcanvas-title" id="tocOffcanvasLabel">Table of Contents</h5>
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" data-bs-target="#tocOffcanvas" aria-label="Close"></button>
</div>
<div class="offcanvas-body">
<nav class="toc" id="toc"></nav>
</div>
</div>
</div>
<div class="content">
<div class="actionbar">
<button class="btn btn-lg border-0 d-md-none" type="button" data-bs-toggle="offcanvas" data-bs-target="#tocOffcanvas" aria-controls="tocOffcanvas" aria-expanded="false" aria-label="Show table of contents">
<i class="bi bi-list"></i>
</button>
<nav id="breadcrumb"></nav>
</div>
<article data-uid="EchoHub.Server.Data.Migrations.AddChannelMembership">
<h1 id="EchoHub_Server_Data_Migrations_AddChannelMembership" data-uid="EchoHub.Server.Data.Migrations.AddChannelMembership" class="text-break">
Class AddChannelMembership <a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Data/Migrations/20260219181720_AddChannelMembership.Designer.cs"><i class="bi bi-code-slash"></i></a>
</h1>
<div class="facts text-secondary">
<dl><dt>Namespace</dt><dd><a class="xref" href="EchoHub.html">EchoHub</a>.<a class="xref" href="EchoHub.Server.html">Server</a>.<a class="xref" href="EchoHub.Server.Data.html">Data</a>.<a class="xref" href="EchoHub.Server.Data.Migrations.html">Migrations</a></dd></dl>
<dl><dt>Assembly</dt><dd>EchoHub.Server.dll</dd></dl>
</div>
<div class="markdown summary"></div>
<div class="markdown conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">[DbContext(typeof(EchoHubDbContext))]
[Migration(&quot;20260219181720_AddChannelMembership&quot;)]
public class AddChannelMembership : Migration</code></pre>
</div>
<dl class="typelist inheritance">
<dt>Inheritance</dt>
<dd>
<div><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object">object</a></div>
<div><span class="xref">Migration</span></div>
<div><span class="xref">AddChannelMembership</span></div>
</dd>
</dl>
<dl class="typelist inheritedMembers">
<dt>Inherited Members</dt>
<dd>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.gettype">object.GetType()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.memberwiseclone">object.MemberwiseClone()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.tostring">object.ToString()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object)">object.Equals(object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object-system-object)">object.Equals(object, object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.referenceequals">object.ReferenceEquals(object, object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.gethashcode">object.GetHashCode()</a>
</div>
</dd></dl>
<h2 class="section" id="constructors">Constructors
</h2>
<a id="EchoHub_Server_Data_Migrations_AddChannelMembership__ctor_" data-uid="EchoHub.Server.Data.Migrations.AddChannelMembership.#ctor*"></a>
<h3 id="EchoHub_Server_Data_Migrations_AddChannelMembership__ctor" data-uid="EchoHub.Server.Data.Migrations.AddChannelMembership.#ctor">
AddChannelMembership()
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Data/Migrations/20260219181720_AddChannelMembership.Designer.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public AddChannelMembership()</code></pre>
</div>
<h2 class="section" id="methods">Methods
</h2>
<a id="EchoHub_Server_Data_Migrations_AddChannelMembership_BuildTargetModel_" data-uid="EchoHub.Server.Data.Migrations.AddChannelMembership.BuildTargetModel*"></a>
<h3 id="EchoHub_Server_Data_Migrations_AddChannelMembership_BuildTargetModel_Microsoft_EntityFrameworkCore_ModelBuilder_" data-uid="EchoHub.Server.Data.Migrations.AddChannelMembership.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
BuildTargetModel(ModelBuilder)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Data/Migrations/20260219181720_AddChannelMembership.Designer.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">protected override void BuildTargetModel(ModelBuilder modelBuilder)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>modelBuilder</code> <span class="xref">ModelBuilder</span></dt>
<dd></dd>
</dl>
<a id="EchoHub_Server_Data_Migrations_AddChannelMembership_Down_" data-uid="EchoHub.Server.Data.Migrations.AddChannelMembership.Down*"></a>
<h3 id="EchoHub_Server_Data_Migrations_AddChannelMembership_Down_Microsoft_EntityFrameworkCore_Migrations_MigrationBuilder_" data-uid="EchoHub.Server.Data.Migrations.AddChannelMembership.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
Down(MigrationBuilder)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Data/Migrations/20260219181720_AddChannelMembership.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">protected override void Down(MigrationBuilder migrationBuilder)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>migrationBuilder</code> <span class="xref">MigrationBuilder</span></dt>
<dd></dd>
</dl>
<a id="EchoHub_Server_Data_Migrations_AddChannelMembership_Up_" data-uid="EchoHub.Server.Data.Migrations.AddChannelMembership.Up*"></a>
<h3 id="EchoHub_Server_Data_Migrations_AddChannelMembership_Up_Microsoft_EntityFrameworkCore_Migrations_MigrationBuilder_" data-uid="EchoHub.Server.Data.Migrations.AddChannelMembership.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
Up(MigrationBuilder)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Data/Migrations/20260219181720_AddChannelMembership.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">protected override void Up(MigrationBuilder migrationBuilder)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>migrationBuilder</code> <span class="xref">MigrationBuilder</span></dt>
<dd></dd>
</dl>
</article>
<div class="contribution d-print-none">
<a href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Data/Migrations/20260219181720_AddChannelMembership.Designer.cs" class="edit-link">Edit this page</a>
</div>
</div>
<div class="affix">
<nav id="affix"></nav>
</div>
</main>
<div class="container-xxl search-results" id="search-results"></div>
<footer class="border-top text-secondary">
<div class="container-xxl">
<div class="flex-fill">
<div class='footer-custom'><div class='footer-inner'><span class='footer-brand'>EchoHub</span><span class='footer-sep'>&middot;</span><a href='https://github.com/HueByte/EchoHub'>GitHub</a><span class='footer-sep'>&middot;</span><a href='https://echohub.voidcube.cloud'>Website</a><span class='footer-sep'>&middot;</span><span class='footer-credit'>Built with <a href='https://dotnet.github.io/docfx'>DocFX</a></span></div></div>
</div>
</div>
</footer>
</body>
</html>
@@ -0,0 +1,306 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Class AddMessageEmbed | EchoHub Documentation </title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="title" content="Class AddMessageEmbed | EchoHub Documentation ">
<link rel="icon" href="../../images/hue_icon.svg">
<link rel="stylesheet" href="../../public/docfx.min.css">
<link rel="stylesheet" href="../../public/main.css">
<meta name="docfx:navrel" content="../../toc.html">
<meta name="docfx:tocrel" content="../toc.html">
<meta name="docfx:rel" content="../../">
<meta name="docfx:docurl" content="https://github.com/HueByte/EchoHub/new/master/apiSpec/new?filename=EchoHub_Server_Data_Migrations_AddMessageEmbed.md&amp;value=---%0Auid%3A%20EchoHub.Server.Data.Migrations.AddMessageEmbed%0Asummary%3A%20&#39;*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax&#39;%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">
<meta name="loc:inThisArticle" content="In this article">
<meta name="loc:searchResultsCount" content="{count} results for &quot;{query}&quot;">
<meta name="loc:searchNoResults" content="No results for &quot;{query}&quot;">
<meta name="loc:tocFilter" content="Filter by title">
<meta name="loc:nextArticle" content="Next">
<meta name="loc:prevArticle" content="Previous">
<meta name="loc:themeLight" content="Light">
<meta name="loc:themeDark" content="Dark">
<meta name="loc:themeAuto" content="Auto">
<meta name="loc:changeTheme" content="Change theme">
<meta name="loc:copy" content="Copy">
<meta name="loc:downloadPdf" content="Download PDF">
<script type="module" src="./../../public/docfx.min.js"></script>
<script>
const theme = localStorage.getItem('theme') || 'auto'
document.documentElement.setAttribute('data-bs-theme', theme === 'auto' ? (window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light') : theme)
</script>
</head>
<body class="tex2jax_ignore" data-layout="" data-yaml-mime="ManagedReference">
<header class="bg-body border-bottom">
<nav id="autocollapse" class="navbar navbar-expand-md" role="navigation">
<div class="container-xxl flex-nowrap">
<a class="navbar-brand" href="../../index.html">
<img id="logo" class="svg" src="../../images/hue_icon.svg" alt="EchoHub">
EchoHub
</a>
<button class="btn btn-lg d-md-none border-0" type="button" data-bs-toggle="collapse" data-bs-target="#navpanel" aria-controls="navpanel" aria-expanded="false" aria-label="Toggle navigation">
<i class="bi bi-three-dots"></i>
</button>
<div class="collapse navbar-collapse" id="navpanel">
<div id="navbar">
<form class="search" role="search" id="search">
<i class="bi bi-search"></i>
<input class="form-control" id="search-query" type="search" disabled placeholder="Search" autocomplete="off" aria-label="Search">
</form>
</div>
</div>
</div>
</nav>
</header>
<main class="container-xxl">
<div class="toc-offcanvas">
<div class="offcanvas-md offcanvas-start" tabindex="-1" id="tocOffcanvas" aria-labelledby="tocOffcanvasLabel">
<div class="offcanvas-header">
<h5 class="offcanvas-title" id="tocOffcanvasLabel">Table of Contents</h5>
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" data-bs-target="#tocOffcanvas" aria-label="Close"></button>
</div>
<div class="offcanvas-body">
<nav class="toc" id="toc"></nav>
</div>
</div>
</div>
<div class="content">
<div class="actionbar">
<button class="btn btn-lg border-0 d-md-none" type="button" data-bs-toggle="offcanvas" data-bs-target="#tocOffcanvas" aria-controls="tocOffcanvas" aria-expanded="false" aria-label="Show table of contents">
<i class="bi bi-list"></i>
</button>
<nav id="breadcrumb"></nav>
</div>
<article data-uid="EchoHub.Server.Data.Migrations.AddMessageEmbed">
<h1 id="EchoHub_Server_Data_Migrations_AddMessageEmbed" data-uid="EchoHub.Server.Data.Migrations.AddMessageEmbed" class="text-break">
Class AddMessageEmbed <a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Data/Migrations/20260219201704_AddMessageEmbed.Designer.cs"><i class="bi bi-code-slash"></i></a>
</h1>
<div class="facts text-secondary">
<dl><dt>Namespace</dt><dd><a class="xref" href="EchoHub.html">EchoHub</a>.<a class="xref" href="EchoHub.Server.html">Server</a>.<a class="xref" href="EchoHub.Server.Data.html">Data</a>.<a class="xref" href="EchoHub.Server.Data.Migrations.html">Migrations</a></dd></dl>
<dl><dt>Assembly</dt><dd>EchoHub.Server.dll</dd></dl>
</div>
<div class="markdown summary"></div>
<div class="markdown conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">[DbContext(typeof(EchoHubDbContext))]
[Migration(&quot;20260219201704_AddMessageEmbed&quot;)]
public class AddMessageEmbed : Migration</code></pre>
</div>
<dl class="typelist inheritance">
<dt>Inheritance</dt>
<dd>
<div><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object">object</a></div>
<div><span class="xref">Migration</span></div>
<div><span class="xref">AddMessageEmbed</span></div>
</dd>
</dl>
<dl class="typelist inheritedMembers">
<dt>Inherited Members</dt>
<dd>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.gettype">object.GetType()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.memberwiseclone">object.MemberwiseClone()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.tostring">object.ToString()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object)">object.Equals(object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object-system-object)">object.Equals(object, object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.referenceequals">object.ReferenceEquals(object, object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.gethashcode">object.GetHashCode()</a>
</div>
</dd></dl>
<h2 class="section" id="constructors">Constructors
</h2>
<a id="EchoHub_Server_Data_Migrations_AddMessageEmbed__ctor_" data-uid="EchoHub.Server.Data.Migrations.AddMessageEmbed.#ctor*"></a>
<h3 id="EchoHub_Server_Data_Migrations_AddMessageEmbed__ctor" data-uid="EchoHub.Server.Data.Migrations.AddMessageEmbed.#ctor">
AddMessageEmbed()
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Data/Migrations/20260219201704_AddMessageEmbed.Designer.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public AddMessageEmbed()</code></pre>
</div>
<h2 class="section" id="methods">Methods
</h2>
<a id="EchoHub_Server_Data_Migrations_AddMessageEmbed_BuildTargetModel_" data-uid="EchoHub.Server.Data.Migrations.AddMessageEmbed.BuildTargetModel*"></a>
<h3 id="EchoHub_Server_Data_Migrations_AddMessageEmbed_BuildTargetModel_Microsoft_EntityFrameworkCore_ModelBuilder_" data-uid="EchoHub.Server.Data.Migrations.AddMessageEmbed.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
BuildTargetModel(ModelBuilder)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Data/Migrations/20260219201704_AddMessageEmbed.Designer.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">protected override void BuildTargetModel(ModelBuilder modelBuilder)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>modelBuilder</code> <span class="xref">ModelBuilder</span></dt>
<dd></dd>
</dl>
<a id="EchoHub_Server_Data_Migrations_AddMessageEmbed_Down_" data-uid="EchoHub.Server.Data.Migrations.AddMessageEmbed.Down*"></a>
<h3 id="EchoHub_Server_Data_Migrations_AddMessageEmbed_Down_Microsoft_EntityFrameworkCore_Migrations_MigrationBuilder_" data-uid="EchoHub.Server.Data.Migrations.AddMessageEmbed.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
Down(MigrationBuilder)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Data/Migrations/20260219201704_AddMessageEmbed.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">protected override void Down(MigrationBuilder migrationBuilder)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>migrationBuilder</code> <span class="xref">MigrationBuilder</span></dt>
<dd></dd>
</dl>
<a id="EchoHub_Server_Data_Migrations_AddMessageEmbed_Up_" data-uid="EchoHub.Server.Data.Migrations.AddMessageEmbed.Up*"></a>
<h3 id="EchoHub_Server_Data_Migrations_AddMessageEmbed_Up_Microsoft_EntityFrameworkCore_Migrations_MigrationBuilder_" data-uid="EchoHub.Server.Data.Migrations.AddMessageEmbed.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
Up(MigrationBuilder)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Data/Migrations/20260219201704_AddMessageEmbed.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">protected override void Up(MigrationBuilder migrationBuilder)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>migrationBuilder</code> <span class="xref">MigrationBuilder</span></dt>
<dd></dd>
</dl>
</article>
<div class="contribution d-print-none">
<a href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Data/Migrations/20260219201704_AddMessageEmbed.Designer.cs" class="edit-link">Edit this page</a>
</div>
</div>
<div class="affix">
<nav id="affix"></nav>
</div>
</main>
<div class="container-xxl search-results" id="search-results"></div>
<footer class="border-top text-secondary">
<div class="container-xxl">
<div class="flex-fill">
<div class='footer-custom'><div class='footer-inner'><span class='footer-brand'>EchoHub</span><span class='footer-sep'>&middot;</span><a href='https://github.com/HueByte/EchoHub'>GitHub</a><span class='footer-sep'>&middot;</span><a href='https://echohub.voidcube.cloud'>Website</a><span class='footer-sep'>&middot;</span><span class='footer-credit'>Built with <a href='https://dotnet.github.io/docfx'>DocFX</a></span></div></div>
</div>
</div>
</footer>
</body>
</html>
@@ -0,0 +1,306 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Class AddModerationRoles | EchoHub Documentation </title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="title" content="Class AddModerationRoles | EchoHub Documentation ">
<link rel="icon" href="../../images/hue_icon.svg">
<link rel="stylesheet" href="../../public/docfx.min.css">
<link rel="stylesheet" href="../../public/main.css">
<meta name="docfx:navrel" content="../../toc.html">
<meta name="docfx:tocrel" content="../toc.html">
<meta name="docfx:rel" content="../../">
<meta name="docfx:docurl" content="https://github.com/HueByte/EchoHub/new/master/apiSpec/new?filename=EchoHub_Server_Data_Migrations_AddModerationRoles.md&amp;value=---%0Auid%3A%20EchoHub.Server.Data.Migrations.AddModerationRoles%0Asummary%3A%20&#39;*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax&#39;%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">
<meta name="loc:inThisArticle" content="In this article">
<meta name="loc:searchResultsCount" content="{count} results for &quot;{query}&quot;">
<meta name="loc:searchNoResults" content="No results for &quot;{query}&quot;">
<meta name="loc:tocFilter" content="Filter by title">
<meta name="loc:nextArticle" content="Next">
<meta name="loc:prevArticle" content="Previous">
<meta name="loc:themeLight" content="Light">
<meta name="loc:themeDark" content="Dark">
<meta name="loc:themeAuto" content="Auto">
<meta name="loc:changeTheme" content="Change theme">
<meta name="loc:copy" content="Copy">
<meta name="loc:downloadPdf" content="Download PDF">
<script type="module" src="./../../public/docfx.min.js"></script>
<script>
const theme = localStorage.getItem('theme') || 'auto'
document.documentElement.setAttribute('data-bs-theme', theme === 'auto' ? (window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light') : theme)
</script>
</head>
<body class="tex2jax_ignore" data-layout="" data-yaml-mime="ManagedReference">
<header class="bg-body border-bottom">
<nav id="autocollapse" class="navbar navbar-expand-md" role="navigation">
<div class="container-xxl flex-nowrap">
<a class="navbar-brand" href="../../index.html">
<img id="logo" class="svg" src="../../images/hue_icon.svg" alt="EchoHub">
EchoHub
</a>
<button class="btn btn-lg d-md-none border-0" type="button" data-bs-toggle="collapse" data-bs-target="#navpanel" aria-controls="navpanel" aria-expanded="false" aria-label="Toggle navigation">
<i class="bi bi-three-dots"></i>
</button>
<div class="collapse navbar-collapse" id="navpanel">
<div id="navbar">
<form class="search" role="search" id="search">
<i class="bi bi-search"></i>
<input class="form-control" id="search-query" type="search" disabled placeholder="Search" autocomplete="off" aria-label="Search">
</form>
</div>
</div>
</div>
</nav>
</header>
<main class="container-xxl">
<div class="toc-offcanvas">
<div class="offcanvas-md offcanvas-start" tabindex="-1" id="tocOffcanvas" aria-labelledby="tocOffcanvasLabel">
<div class="offcanvas-header">
<h5 class="offcanvas-title" id="tocOffcanvasLabel">Table of Contents</h5>
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" data-bs-target="#tocOffcanvas" aria-label="Close"></button>
</div>
<div class="offcanvas-body">
<nav class="toc" id="toc"></nav>
</div>
</div>
</div>
<div class="content">
<div class="actionbar">
<button class="btn btn-lg border-0 d-md-none" type="button" data-bs-toggle="offcanvas" data-bs-target="#tocOffcanvas" aria-controls="tocOffcanvas" aria-expanded="false" aria-label="Show table of contents">
<i class="bi bi-list"></i>
</button>
<nav id="breadcrumb"></nav>
</div>
<article data-uid="EchoHub.Server.Data.Migrations.AddModerationRoles">
<h1 id="EchoHub_Server_Data_Migrations_AddModerationRoles" data-uid="EchoHub.Server.Data.Migrations.AddModerationRoles" class="text-break">
Class AddModerationRoles <a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Data/Migrations/20260219162414_AddModerationRoles.Designer.cs"><i class="bi bi-code-slash"></i></a>
</h1>
<div class="facts text-secondary">
<dl><dt>Namespace</dt><dd><a class="xref" href="EchoHub.html">EchoHub</a>.<a class="xref" href="EchoHub.Server.html">Server</a>.<a class="xref" href="EchoHub.Server.Data.html">Data</a>.<a class="xref" href="EchoHub.Server.Data.Migrations.html">Migrations</a></dd></dl>
<dl><dt>Assembly</dt><dd>EchoHub.Server.dll</dd></dl>
</div>
<div class="markdown summary"></div>
<div class="markdown conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">[DbContext(typeof(EchoHubDbContext))]
[Migration(&quot;20260219162414_AddModerationRoles&quot;)]
public class AddModerationRoles : Migration</code></pre>
</div>
<dl class="typelist inheritance">
<dt>Inheritance</dt>
<dd>
<div><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object">object</a></div>
<div><span class="xref">Migration</span></div>
<div><span class="xref">AddModerationRoles</span></div>
</dd>
</dl>
<dl class="typelist inheritedMembers">
<dt>Inherited Members</dt>
<dd>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.gettype">object.GetType()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.memberwiseclone">object.MemberwiseClone()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.tostring">object.ToString()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object)">object.Equals(object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object-system-object)">object.Equals(object, object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.referenceequals">object.ReferenceEquals(object, object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.gethashcode">object.GetHashCode()</a>
</div>
</dd></dl>
<h2 class="section" id="constructors">Constructors
</h2>
<a id="EchoHub_Server_Data_Migrations_AddModerationRoles__ctor_" data-uid="EchoHub.Server.Data.Migrations.AddModerationRoles.#ctor*"></a>
<h3 id="EchoHub_Server_Data_Migrations_AddModerationRoles__ctor" data-uid="EchoHub.Server.Data.Migrations.AddModerationRoles.#ctor">
AddModerationRoles()
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Data/Migrations/20260219162414_AddModerationRoles.Designer.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public AddModerationRoles()</code></pre>
</div>
<h2 class="section" id="methods">Methods
</h2>
<a id="EchoHub_Server_Data_Migrations_AddModerationRoles_BuildTargetModel_" data-uid="EchoHub.Server.Data.Migrations.AddModerationRoles.BuildTargetModel*"></a>
<h3 id="EchoHub_Server_Data_Migrations_AddModerationRoles_BuildTargetModel_Microsoft_EntityFrameworkCore_ModelBuilder_" data-uid="EchoHub.Server.Data.Migrations.AddModerationRoles.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
BuildTargetModel(ModelBuilder)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Data/Migrations/20260219162414_AddModerationRoles.Designer.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">protected override void BuildTargetModel(ModelBuilder modelBuilder)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>modelBuilder</code> <span class="xref">ModelBuilder</span></dt>
<dd></dd>
</dl>
<a id="EchoHub_Server_Data_Migrations_AddModerationRoles_Down_" data-uid="EchoHub.Server.Data.Migrations.AddModerationRoles.Down*"></a>
<h3 id="EchoHub_Server_Data_Migrations_AddModerationRoles_Down_Microsoft_EntityFrameworkCore_Migrations_MigrationBuilder_" data-uid="EchoHub.Server.Data.Migrations.AddModerationRoles.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
Down(MigrationBuilder)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Data/Migrations/20260219162414_AddModerationRoles.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">protected override void Down(MigrationBuilder migrationBuilder)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>migrationBuilder</code> <span class="xref">MigrationBuilder</span></dt>
<dd></dd>
</dl>
<a id="EchoHub_Server_Data_Migrations_AddModerationRoles_Up_" data-uid="EchoHub.Server.Data.Migrations.AddModerationRoles.Up*"></a>
<h3 id="EchoHub_Server_Data_Migrations_AddModerationRoles_Up_Microsoft_EntityFrameworkCore_Migrations_MigrationBuilder_" data-uid="EchoHub.Server.Data.Migrations.AddModerationRoles.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
Up(MigrationBuilder)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Data/Migrations/20260219162414_AddModerationRoles.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">protected override void Up(MigrationBuilder migrationBuilder)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>migrationBuilder</code> <span class="xref">MigrationBuilder</span></dt>
<dd></dd>
</dl>
</article>
<div class="contribution d-print-none">
<a href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Data/Migrations/20260219162414_AddModerationRoles.Designer.cs" class="edit-link">Edit this page</a>
</div>
</div>
<div class="affix">
<nav id="affix"></nav>
</div>
</main>
<div class="container-xxl search-results" id="search-results"></div>
<footer class="border-top text-secondary">
<div class="container-xxl">
<div class="flex-fill">
<div class='footer-custom'><div class='footer-inner'><span class='footer-brand'>EchoHub</span><span class='footer-sep'>&middot;</span><a href='https://github.com/HueByte/EchoHub'>GitHub</a><span class='footer-sep'>&middot;</span><a href='https://echohub.voidcube.cloud'>Website</a><span class='footer-sep'>&middot;</span><span class='footer-credit'>Built with <a href='https://dotnet.github.io/docfx'>DocFX</a></span></div></div>
</div>
</div>
</footer>
</body>
</html>
@@ -94,6 +94,22 @@
<h3 id="classes">
Classes
</h3>
<dl class="jumplist">
<dt><a class="xref" href="EchoHub.Server.Data.Migrations.AddChannelIsPublic.html">AddChannelIsPublic</a></dt>
<dd></dd>
</dl>
<dl class="jumplist">
<dt><a class="xref" href="EchoHub.Server.Data.Migrations.AddChannelMembership.html">AddChannelMembership</a></dt>
<dd></dd>
</dl>
<dl class="jumplist">
<dt><a class="xref" href="EchoHub.Server.Data.Migrations.AddMessageEmbed.html">AddMessageEmbed</a></dt>
<dd></dd>
</dl>
<dl class="jumplist">
<dt><a class="xref" href="EchoHub.Server.Data.Migrations.AddModerationRoles.html">AddModerationRoles</a></dt>
<dd></dd>
</dl>
<dl class="jumplist">
<dt><a class="xref" href="EchoHub.Server.Data.Migrations.InitialCreate.html">InitialCreate</a></dt>
<dd></dd>
+1 -1
View File
@@ -209,7 +209,7 @@ public class ChatHub : Hub&lt;IEchoHubClient&gt;, IDisposable</code></pre>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public Task&lt;List&lt;MessageDto&gt;&gt; GetChannelHistory(string channelName, int count = 50)</code></pre>
<pre><code class="lang-csharp hljs">public Task&lt;List&lt;MessageDto&gt;&gt; GetChannelHistory(string channelName, int count = 100)</code></pre>
</div>
<h4 class="section">Parameters</h4>
@@ -160,8 +160,8 @@ Class ChatService <a class="header-action link-secondary" title="View source" h
<a id="EchoHub_Server_Services_ChatService__ctor_" data-uid="EchoHub.Server.Services.ChatService.#ctor*"></a>
<h3 id="EchoHub_Server_Services_ChatService__ctor_Microsoft_Extensions_DependencyInjection_IServiceScopeFactory_EchoHub_Server_Services_PresenceTracker_System_Collections_Generic_IEnumerable_EchoHub_Core_Contracts_IChatBroadcaster__Microsoft_Extensions_Logging_ILogger_EchoHub_Server_Services_ChatService__" data-uid="EchoHub.Server.Services.ChatService.#ctor(Microsoft.Extensions.DependencyInjection.IServiceScopeFactory,EchoHub.Server.Services.PresenceTracker,System.Collections.Generic.IEnumerable{EchoHub.Core.Contracts.IChatBroadcaster},Microsoft.Extensions.Logging.ILogger{EchoHub.Server.Services.ChatService})">
ChatService(IServiceScopeFactory, PresenceTracker, IEnumerable&lt;IChatBroadcaster&gt;, ILogger&lt;ChatService&gt;)
<h3 id="EchoHub_Server_Services_ChatService__ctor_Microsoft_Extensions_DependencyInjection_IServiceScopeFactory_EchoHub_Server_Services_PresenceTracker_System_Collections_Generic_IEnumerable_EchoHub_Core_Contracts_IChatBroadcaster__EchoHub_Server_Services_LinkEmbedService_Microsoft_Extensions_Logging_ILogger_EchoHub_Server_Services_ChatService__" data-uid="EchoHub.Server.Services.ChatService.#ctor(Microsoft.Extensions.DependencyInjection.IServiceScopeFactory,EchoHub.Server.Services.PresenceTracker,System.Collections.Generic.IEnumerable{EchoHub.Core.Contracts.IChatBroadcaster},EchoHub.Server.Services.LinkEmbedService,Microsoft.Extensions.Logging.ILogger{EchoHub.Server.Services.ChatService})">
ChatService(IServiceScopeFactory, PresenceTracker, IEnumerable&lt;IChatBroadcaster&gt;, LinkEmbedService, ILogger&lt;ChatService&gt;)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Services/ChatService.cs"><i class="bi bi-code-slash"></i></a>
</h3>
@@ -169,7 +169,7 @@ Class ChatService <a class="header-action link-secondary" title="View source" h
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public ChatService(IServiceScopeFactory scopeFactory, PresenceTracker presenceTracker, IEnumerable&lt;IChatBroadcaster&gt; broadcasters, ILogger&lt;ChatService&gt; logger)</code></pre>
<pre><code class="lang-csharp hljs">public ChatService(IServiceScopeFactory scopeFactory, PresenceTracker presenceTracker, IEnumerable&lt;IChatBroadcaster&gt; broadcasters, LinkEmbedService embedService, ILogger&lt;ChatService&gt; logger)</code></pre>
</div>
<h4 class="section">Parameters</h4>
@@ -180,6 +180,8 @@ Class ChatService <a class="header-action link-secondary" title="View source" h
<dd></dd>
<dt><code>broadcasters</code> <span class="xref">IEnumerable</span>&lt;<a class="xref" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/Contracts/IChatBroadcaster.cs">IChatBroadcaster</a>&gt;</dt>
<dd></dd>
<dt><code>embedService</code> <a class="xref" href="EchoHub.Server.Services.LinkEmbedService.html">LinkEmbedService</a></dt>
<dd></dd>
<dt><code>logger</code> <span class="xref">ILogger</span>&lt;<a class="xref" href="EchoHub.Server.Services.ChatService.html">ChatService</a>&gt;</dt>
<dd></dd>
</dl>
@@ -189,11 +189,16 @@ Class ImageToAsciiService <a class="header-action link-secondary" title="View s
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Services/ImageToAsciiService.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 summary"><p>Converts an image to ASCII art using half-block characters (▀▄█) with
printable color tags for 2x vertical resolution.
Each character cell represents two vertical pixels.
Format: {F:RRGGBB} foreground, {B:RRGGBB} background, {X} reset.
Uses only printable ASCII — no terminal escape bytes.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public string ConvertToAscii(Stream imageStream, int width = 80, int height = 40)</code></pre>
<pre><code class="lang-csharp hljs">public string ConvertToAscii(Stream imageStream, int width = 80, int height = 80)</code></pre>
</div>
<h4 class="section">Parameters</h4>
@@ -222,6 +227,44 @@ Class ImageToAsciiService <a class="header-action link-secondary" title="View s
<a id="EchoHub_Server_Services_ImageToAsciiService_GetDimensions_" data-uid="EchoHub.Server.Services.ImageToAsciiService.GetDimensions*"></a>
<h3 id="EchoHub_Server_Services_ImageToAsciiService_GetDimensions_System_String_" data-uid="EchoHub.Server.Services.ImageToAsciiService.GetDimensions(System.String)">
GetDimensions(string?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Services/ImageToAsciiService.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"><p>Returns (width, height) dimensions for the given size code.
s = small (40x40), m = medium/default (80x80), l = large (120x120).</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public static (int Width, int Height) GetDimensions(string? size)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>size</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt>(<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.valuetuple-system.int32,system.int32-.width">Width</a>, <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.valuetuple-system.int32,system.int32-.height">Height</a>)</dt>
<dd></dd>
</dl>
</article>
@@ -0,0 +1,256 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Class LinkEmbedService | EchoHub Documentation </title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="title" content="Class LinkEmbedService | EchoHub Documentation ">
<link rel="icon" href="../../images/hue_icon.svg">
<link rel="stylesheet" href="../../public/docfx.min.css">
<link rel="stylesheet" href="../../public/main.css">
<meta name="docfx:navrel" content="../../toc.html">
<meta name="docfx:tocrel" content="../toc.html">
<meta name="docfx:rel" content="../../">
<meta name="docfx:docurl" content="https://github.com/HueByte/EchoHub/new/master/apiSpec/new?filename=EchoHub_Server_Services_LinkEmbedService.md&amp;value=---%0Auid%3A%20EchoHub.Server.Services.LinkEmbedService%0Asummary%3A%20&#39;*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax&#39;%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">
<meta name="loc:inThisArticle" content="In this article">
<meta name="loc:searchResultsCount" content="{count} results for &quot;{query}&quot;">
<meta name="loc:searchNoResults" content="No results for &quot;{query}&quot;">
<meta name="loc:tocFilter" content="Filter by title">
<meta name="loc:nextArticle" content="Next">
<meta name="loc:prevArticle" content="Previous">
<meta name="loc:themeLight" content="Light">
<meta name="loc:themeDark" content="Dark">
<meta name="loc:themeAuto" content="Auto">
<meta name="loc:changeTheme" content="Change theme">
<meta name="loc:copy" content="Copy">
<meta name="loc:downloadPdf" content="Download PDF">
<script type="module" src="./../../public/docfx.min.js"></script>
<script>
const theme = localStorage.getItem('theme') || 'auto'
document.documentElement.setAttribute('data-bs-theme', theme === 'auto' ? (window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light') : theme)
</script>
</head>
<body class="tex2jax_ignore" data-layout="" data-yaml-mime="ManagedReference">
<header class="bg-body border-bottom">
<nav id="autocollapse" class="navbar navbar-expand-md" role="navigation">
<div class="container-xxl flex-nowrap">
<a class="navbar-brand" href="../../index.html">
<img id="logo" class="svg" src="../../images/hue_icon.svg" alt="EchoHub">
EchoHub
</a>
<button class="btn btn-lg d-md-none border-0" type="button" data-bs-toggle="collapse" data-bs-target="#navpanel" aria-controls="navpanel" aria-expanded="false" aria-label="Toggle navigation">
<i class="bi bi-three-dots"></i>
</button>
<div class="collapse navbar-collapse" id="navpanel">
<div id="navbar">
<form class="search" role="search" id="search">
<i class="bi bi-search"></i>
<input class="form-control" id="search-query" type="search" disabled placeholder="Search" autocomplete="off" aria-label="Search">
</form>
</div>
</div>
</div>
</nav>
</header>
<main class="container-xxl">
<div class="toc-offcanvas">
<div class="offcanvas-md offcanvas-start" tabindex="-1" id="tocOffcanvas" aria-labelledby="tocOffcanvasLabel">
<div class="offcanvas-header">
<h5 class="offcanvas-title" id="tocOffcanvasLabel">Table of Contents</h5>
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" data-bs-target="#tocOffcanvas" aria-label="Close"></button>
</div>
<div class="offcanvas-body">
<nav class="toc" id="toc"></nav>
</div>
</div>
</div>
<div class="content">
<div class="actionbar">
<button class="btn btn-lg border-0 d-md-none" type="button" data-bs-toggle="offcanvas" data-bs-target="#tocOffcanvas" aria-controls="tocOffcanvas" aria-expanded="false" aria-label="Show table of contents">
<i class="bi bi-list"></i>
</button>
<nav id="breadcrumb"></nav>
</div>
<article data-uid="EchoHub.Server.Services.LinkEmbedService">
<h1 id="EchoHub_Server_Services_LinkEmbedService" data-uid="EchoHub.Server.Services.LinkEmbedService" class="text-break">
Class LinkEmbedService <a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Services/LinkEmbedService.cs"><i class="bi bi-code-slash"></i></a>
</h1>
<div class="facts text-secondary">
<dl><dt>Namespace</dt><dd><a class="xref" href="EchoHub.html">EchoHub</a>.<a class="xref" href="EchoHub.Server.html">Server</a>.<a class="xref" href="EchoHub.Server.Services.html">Services</a></dd></dl>
<dl><dt>Assembly</dt><dd>EchoHub.Server.dll</dd></dl>
</div>
<div class="markdown summary"></div>
<div class="markdown conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public class LinkEmbedService</code></pre>
</div>
<dl class="typelist inheritance">
<dt>Inheritance</dt>
<dd>
<div><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object">object</a></div>
<div><span class="xref">LinkEmbedService</span></div>
</dd>
</dl>
<dl class="typelist inheritedMembers">
<dt>Inherited Members</dt>
<dd>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.gettype">object.GetType()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.memberwiseclone">object.MemberwiseClone()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.tostring">object.ToString()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object)">object.Equals(object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object-system-object)">object.Equals(object, object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.referenceequals">object.ReferenceEquals(object, object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.gethashcode">object.GetHashCode()</a>
</div>
</dd></dl>
<h2 class="section" id="constructors">Constructors
</h2>
<a id="EchoHub_Server_Services_LinkEmbedService__ctor_" data-uid="EchoHub.Server.Services.LinkEmbedService.#ctor*"></a>
<h3 id="EchoHub_Server_Services_LinkEmbedService__ctor_System_Net_Http_IHttpClientFactory_Microsoft_Extensions_Logging_ILogger_EchoHub_Server_Services_LinkEmbedService__" data-uid="EchoHub.Server.Services.LinkEmbedService.#ctor(System.Net.Http.IHttpClientFactory,Microsoft.Extensions.Logging.ILogger{EchoHub.Server.Services.LinkEmbedService})">
LinkEmbedService(IHttpClientFactory, ILogger&lt;LinkEmbedService&gt;)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Services/LinkEmbedService.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public LinkEmbedService(IHttpClientFactory httpClientFactory, ILogger&lt;LinkEmbedService&gt; logger)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>httpClientFactory</code> <span class="xref">IHttpClientFactory</span></dt>
<dd></dd>
<dt><code>logger</code> <span class="xref">ILogger</span>&lt;<a class="xref" href="EchoHub.Server.Services.LinkEmbedService.html">LinkEmbedService</a>&gt;</dt>
<dd></dd>
</dl>
<h2 class="section" id="methods">Methods
</h2>
<a id="EchoHub_Server_Services_LinkEmbedService_TryGetEmbedsAsync_" data-uid="EchoHub.Server.Services.LinkEmbedService.TryGetEmbedsAsync*"></a>
<h3 id="EchoHub_Server_Services_LinkEmbedService_TryGetEmbedsAsync_System_String_" data-uid="EchoHub.Server.Services.LinkEmbedService.TryGetEmbedsAsync(System.String)">
TryGetEmbedsAsync(string)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Services/LinkEmbedService.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"><p>Detect all URLs in message content and attempt to fetch OG embed data for each.
Returns null if no URLs found or all fetches fail.
Never throws — all errors are caught internally.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public Task&lt;List&lt;EmbedDto&gt;?&gt; TryGetEmbedsAsync(string content)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>content</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">Task</span>&lt;<span class="xref">List</span>&lt;<a class="xref" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Core/DTOs/ChatDtos.cs">EmbedDto</a>&gt;&gt;</dt>
<dd></dd>
</dl>
</article>
<div class="contribution d-print-none">
<a href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Services/LinkEmbedService.cs" class="edit-link">Edit this page</a>
</div>
</div>
<div class="affix">
<nav id="affix"></nav>
</div>
</main>
<div class="container-xxl search-results" id="search-results"></div>
<footer class="border-top text-secondary">
<div class="container-xxl">
<div class="flex-fill">
<div class='footer-custom'><div class='footer-inner'><span class='footer-brand'>EchoHub</span><span class='footer-sep'>&middot;</span><a href='https://github.com/HueByte/EchoHub'>GitHub</a><span class='footer-sep'>&middot;</span><a href='https://echohub.voidcube.cloud'>Website</a><span class='footer-sep'>&middot;</span><span class='footer-credit'>Built with <a href='https://dotnet.github.io/docfx'>DocFX</a></span></div></div>
</div>
</div>
</footer>
</body>
</html>
@@ -182,6 +182,44 @@ Class PresenceTracker <a class="header-action link-secondary" title="View sourc
</h2>
<a id="EchoHub_Server_Services_PresenceTracker_ForceRemoveUser_" data-uid="EchoHub.Server.Services.PresenceTracker.ForceRemoveUser*"></a>
<h3 id="EchoHub_Server_Services_PresenceTracker_ForceRemoveUser_System_String_" data-uid="EchoHub.Server.Services.PresenceTracker.ForceRemoveUser(System.String)">
ForceRemoveUser(string)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Services/PresenceTracker.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"><p>Forcibly remove a user from all tracking. Returns their connection IDs and channels
so the caller can broadcast departures and force-disconnect connections.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public (List&lt;string&gt; ConnectionIds, List&lt;string&gt; Channels) ForceRemoveUser(string username)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>username</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt>(<span class="xref">List</span>&lt;<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a>&gt; <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.valuetuple-system.collections.generic.list-system.string-,system.collections.generic.list-system.string--.connectionids">ConnectionIds</a>, <span class="xref">List</span>&lt;<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a>&gt; <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.valuetuple-system.collections.generic.list-system.string-,system.collections.generic.list-system.string--.channels">Channels</a>)</dt>
<dd></dd>
</dl>
<a id="EchoHub_Server_Services_PresenceTracker_GetChannelsForUser_" data-uid="EchoHub.Server.Services.PresenceTracker.GetChannelsForUser*"></a>
<h3 id="EchoHub_Server_Services_PresenceTracker_GetChannelsForUser_System_String_" data-uid="EchoHub.Server.Services.PresenceTracker.GetChannelsForUser(System.String)">
@@ -195,6 +195,80 @@ Class SignalRBroadcaster <a class="header-action link-secondary" title="View so
</h2>
<a id="EchoHub_Server_Services_SignalRBroadcaster_ForceDisconnectUserAsync_" data-uid="EchoHub.Server.Services.SignalRBroadcaster.ForceDisconnectUserAsync*"></a>
<h3 id="EchoHub_Server_Services_SignalRBroadcaster_ForceDisconnectUserAsync_System_Collections_Generic_List_System_String__System_String_" data-uid="EchoHub.Server.Services.SignalRBroadcaster.ForceDisconnectUserAsync(System.Collections.Generic.List{System.String},System.String)">
ForceDisconnectUserAsync(List&lt;string&gt;, string)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Services/SignalRBroadcaster.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public Task ForceDisconnectUserAsync(List&lt;string&gt; connectionIds, string reason)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>connectionIds</code> <span class="xref">List</span>&lt;<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a>&gt;</dt>
<dd></dd>
<dt><code>reason</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">Task</span></dt>
<dd></dd>
</dl>
<a id="EchoHub_Server_Services_SignalRBroadcaster_SendChannelNukedAsync_" data-uid="EchoHub.Server.Services.SignalRBroadcaster.SendChannelNukedAsync*"></a>
<h3 id="EchoHub_Server_Services_SignalRBroadcaster_SendChannelNukedAsync_System_String_" data-uid="EchoHub.Server.Services.SignalRBroadcaster.SendChannelNukedAsync(System.String)">
SendChannelNukedAsync(string)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Services/SignalRBroadcaster.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public Task SendChannelNukedAsync(string channelName)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>channelName</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">Task</span></dt>
<dd></dd>
</dl>
<a id="EchoHub_Server_Services_SignalRBroadcaster_SendChannelUpdatedAsync_" data-uid="EchoHub.Server.Services.SignalRBroadcaster.SendChannelUpdatedAsync*"></a>
<h3 id="EchoHub_Server_Services_SignalRBroadcaster_SendChannelUpdatedAsync_EchoHub_Core_DTOs_ChannelDto_System_String_" data-uid="EchoHub.Server.Services.SignalRBroadcaster.SendChannelUpdatedAsync(EchoHub.Core.DTOs.ChannelDto,System.String)">
@@ -271,6 +345,44 @@ Class SignalRBroadcaster <a class="header-action link-secondary" title="View so
<a id="EchoHub_Server_Services_SignalRBroadcaster_SendMessageDeletedAsync_" data-uid="EchoHub.Server.Services.SignalRBroadcaster.SendMessageDeletedAsync*"></a>
<h3 id="EchoHub_Server_Services_SignalRBroadcaster_SendMessageDeletedAsync_System_String_System_Guid_" data-uid="EchoHub.Server.Services.SignalRBroadcaster.SendMessageDeletedAsync(System.String,System.Guid)">
SendMessageDeletedAsync(string, Guid)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Services/SignalRBroadcaster.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public Task SendMessageDeletedAsync(string channelName, Guid messageId)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>channelName</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>messageId</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.guid">Guid</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">Task</span></dt>
<dd></dd>
</dl>
<a id="EchoHub_Server_Services_SignalRBroadcaster_SendMessageToChannelAsync_" data-uid="EchoHub.Server.Services.SignalRBroadcaster.SendMessageToChannelAsync*"></a>
<h3 id="EchoHub_Server_Services_SignalRBroadcaster_SendMessageToChannelAsync_System_String_EchoHub_Core_DTOs_MessageDto_" data-uid="EchoHub.Server.Services.SignalRBroadcaster.SendMessageToChannelAsync(System.String,EchoHub.Core.DTOs.MessageDto)">
@@ -309,6 +421,44 @@ Class SignalRBroadcaster <a class="header-action link-secondary" title="View so
<a id="EchoHub_Server_Services_SignalRBroadcaster_SendUserBannedAsync_" data-uid="EchoHub.Server.Services.SignalRBroadcaster.SendUserBannedAsync*"></a>
<h3 id="EchoHub_Server_Services_SignalRBroadcaster_SendUserBannedAsync_System_String_System_String_" data-uid="EchoHub.Server.Services.SignalRBroadcaster.SendUserBannedAsync(System.String,System.String)">
SendUserBannedAsync(string, string?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Services/SignalRBroadcaster.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public Task SendUserBannedAsync(string username, string? reason)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>username</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>reason</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">Task</span></dt>
<dd></dd>
</dl>
<a id="EchoHub_Server_Services_SignalRBroadcaster_SendUserJoinedAsync_" data-uid="EchoHub.Server.Services.SignalRBroadcaster.SendUserJoinedAsync*"></a>
<h3 id="EchoHub_Server_Services_SignalRBroadcaster_SendUserJoinedAsync_System_String_System_String_System_String_" data-uid="EchoHub.Server.Services.SignalRBroadcaster.SendUserJoinedAsync(System.String,System.String,System.String)">
@@ -349,6 +499,46 @@ Class SignalRBroadcaster <a class="header-action link-secondary" title="View so
<a id="EchoHub_Server_Services_SignalRBroadcaster_SendUserKickedAsync_" data-uid="EchoHub.Server.Services.SignalRBroadcaster.SendUserKickedAsync*"></a>
<h3 id="EchoHub_Server_Services_SignalRBroadcaster_SendUserKickedAsync_System_String_System_String_System_String_" data-uid="EchoHub.Server.Services.SignalRBroadcaster.SendUserKickedAsync(System.String,System.String,System.String)">
SendUserKickedAsync(string, string, string?)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Services/SignalRBroadcaster.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public Task SendUserKickedAsync(string channelName, string username, string? reason)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>channelName</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>username</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
<dt><code>reason</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">Task</span></dt>
<dd></dd>
</dl>
<a id="EchoHub_Server_Services_SignalRBroadcaster_SendUserLeftAsync_" data-uid="EchoHub.Server.Services.SignalRBroadcaster.SendUserLeftAsync*"></a>
<h3 id="EchoHub_Server_Services_SignalRBroadcaster_SendUserLeftAsync_System_String_System_String_" data-uid="EchoHub.Server.Services.SignalRBroadcaster.SendUserLeftAsync(System.String,System.String)">
+4
View File
@@ -110,6 +110,10 @@ Classes
<dt><a class="xref" href="EchoHub.Server.Services.ImageToAsciiService.html">ImageToAsciiService</a></dt>
<dd></dd>
</dl>
<dl class="jumplist">
<dt><a class="xref" href="EchoHub.Server.Services.LinkEmbedService.html">LinkEmbedService</a></dt>
<dd></dd>
</dl>
<dl class="jumplist">
<dt><a class="xref" href="EchoHub.Server.Services.PresenceTracker.html">PresenceTracker</a></dt>
<dd></dd>
@@ -0,0 +1,254 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Class DataMigrationService | EchoHub Documentation </title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="title" content="Class DataMigrationService | EchoHub Documentation ">
<link rel="icon" href="../../images/hue_icon.svg">
<link rel="stylesheet" href="../../public/docfx.min.css">
<link rel="stylesheet" href="../../public/main.css">
<meta name="docfx:navrel" content="../../toc.html">
<meta name="docfx:tocrel" content="../toc.html">
<meta name="docfx:rel" content="../../">
<meta name="docfx:docurl" content="https://github.com/HueByte/EchoHub/new/master/apiSpec/new?filename=EchoHub_Server_Setup_DataMigrationService.md&amp;value=---%0Auid%3A%20EchoHub.Server.Setup.DataMigrationService%0Asummary%3A%20&#39;*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax&#39;%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">
<meta name="loc:inThisArticle" content="In this article">
<meta name="loc:searchResultsCount" content="{count} results for &quot;{query}&quot;">
<meta name="loc:searchNoResults" content="No results for &quot;{query}&quot;">
<meta name="loc:tocFilter" content="Filter by title">
<meta name="loc:nextArticle" content="Next">
<meta name="loc:prevArticle" content="Previous">
<meta name="loc:themeLight" content="Light">
<meta name="loc:themeDark" content="Dark">
<meta name="loc:themeAuto" content="Auto">
<meta name="loc:changeTheme" content="Change theme">
<meta name="loc:copy" content="Copy">
<meta name="loc:downloadPdf" content="Download PDF">
<script type="module" src="./../../public/docfx.min.js"></script>
<script>
const theme = localStorage.getItem('theme') || 'auto'
document.documentElement.setAttribute('data-bs-theme', theme === 'auto' ? (window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light') : theme)
</script>
</head>
<body class="tex2jax_ignore" data-layout="" data-yaml-mime="ManagedReference">
<header class="bg-body border-bottom">
<nav id="autocollapse" class="navbar navbar-expand-md" role="navigation">
<div class="container-xxl flex-nowrap">
<a class="navbar-brand" href="../../index.html">
<img id="logo" class="svg" src="../../images/hue_icon.svg" alt="EchoHub">
EchoHub
</a>
<button class="btn btn-lg d-md-none border-0" type="button" data-bs-toggle="collapse" data-bs-target="#navpanel" aria-controls="navpanel" aria-expanded="false" aria-label="Toggle navigation">
<i class="bi bi-three-dots"></i>
</button>
<div class="collapse navbar-collapse" id="navpanel">
<div id="navbar">
<form class="search" role="search" id="search">
<i class="bi bi-search"></i>
<input class="form-control" id="search-query" type="search" disabled placeholder="Search" autocomplete="off" aria-label="Search">
</form>
</div>
</div>
</div>
</nav>
</header>
<main class="container-xxl">
<div class="toc-offcanvas">
<div class="offcanvas-md offcanvas-start" tabindex="-1" id="tocOffcanvas" aria-labelledby="tocOffcanvasLabel">
<div class="offcanvas-header">
<h5 class="offcanvas-title" id="tocOffcanvasLabel">Table of Contents</h5>
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" data-bs-target="#tocOffcanvas" aria-label="Close"></button>
</div>
<div class="offcanvas-body">
<nav class="toc" id="toc"></nav>
</div>
</div>
</div>
<div class="content">
<div class="actionbar">
<button class="btn btn-lg border-0 d-md-none" type="button" data-bs-toggle="offcanvas" data-bs-target="#tocOffcanvas" aria-controls="tocOffcanvas" aria-expanded="false" aria-label="Show table of contents">
<i class="bi bi-list"></i>
</button>
<nav id="breadcrumb"></nav>
</div>
<article data-uid="EchoHub.Server.Setup.DataMigrationService">
<h1 id="EchoHub_Server_Setup_DataMigrationService" data-uid="EchoHub.Server.Setup.DataMigrationService" class="text-break">
Class DataMigrationService <a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Setup/DataMigrationService.cs"><i class="bi bi-code-slash"></i></a>
</h1>
<div class="facts text-secondary">
<dl><dt>Namespace</dt><dd><a class="xref" href="EchoHub.html">EchoHub</a>.<a class="xref" href="EchoHub.Server.html">Server</a>.<a class="xref" href="EchoHub.Server.Setup.html">Setup</a></dd></dl>
<dl><dt>Assembly</dt><dd>EchoHub.Server.dll</dd></dl>
</div>
<div class="markdown summary"></div>
<div class="markdown conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public static class DataMigrationService</code></pre>
</div>
<dl class="typelist inheritance">
<dt>Inheritance</dt>
<dd>
<div><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object">object</a></div>
<div><span class="xref">DataMigrationService</span></div>
</dd>
</dl>
<dl class="typelist inheritedMembers">
<dt>Inherited Members</dt>
<dd>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.gettype">object.GetType()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.memberwiseclone">object.MemberwiseClone()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.tostring">object.ToString()</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object)">object.Equals(object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object-system-object)">object.Equals(object, object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.referenceequals">object.ReferenceEquals(object, object)</a>
</div>
<div>
<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object.gethashcode">object.GetHashCode()</a>
</div>
</dd></dl>
<h2 class="section" id="methods">Methods
</h2>
<a id="EchoHub_Server_Setup_DataMigrationService_AnsiToColorTags_" data-uid="EchoHub.Server.Setup.DataMigrationService.AnsiToColorTags*"></a>
<h3 id="EchoHub_Server_Setup_DataMigrationService_AnsiToColorTags_System_String_" data-uid="EchoHub.Server.Setup.DataMigrationService.AnsiToColorTags(System.String)">
AnsiToColorTags(string)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Setup/DataMigrationService.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"><p>Convert ANSI escape codes to printable color tags.
\x1b[38;2;R;G;Bm → {F:RRGGBB}, \x1b[48;2;R;G;Bm → {B:RRGGBB}, \x1b[0m → {X}</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public static string AnsiToColorTags(string text)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>text</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></dt>
<dd></dd>
</dl>
<a id="EchoHub_Server_Setup_DataMigrationService_RunAsync_" data-uid="EchoHub.Server.Setup.DataMigrationService.RunAsync*"></a>
<h3 id="EchoHub_Server_Setup_DataMigrationService_RunAsync_System_IServiceProvider_" data-uid="EchoHub.Server.Setup.DataMigrationService.RunAsync(System.IServiceProvider)">
RunAsync(IServiceProvider)
<a class="header-action link-secondary" title="View source" href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Setup/DataMigrationService.cs"><i class="bi bi-code-slash"></i></a>
</h3>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public static Task RunAsync(IServiceProvider services)</code></pre>
</div>
<h4 class="section">Parameters</h4>
<dl class="parameters">
<dt><code>services</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.iserviceprovider">IServiceProvider</a></dt>
<dd></dd>
</dl>
<h4 class="section">Returns</h4>
<dl class="parameters">
<dt><span class="xref">Task</span></dt>
<dd></dd>
</dl>
</article>
<div class="contribution d-print-none">
<a href="https://github.com/HueByte/EchoHub/blob/master/src/EchoHub.Server/Setup/DataMigrationService.cs" class="edit-link">Edit this page</a>
</div>
</div>
<div class="affix">
<nav id="affix"></nav>
</div>
</main>
<div class="container-xxl search-results" id="search-results"></div>
<footer class="border-top text-secondary">
<div class="container-xxl">
<div class="flex-fill">
<div class='footer-custom'><div class='footer-inner'><span class='footer-brand'>EchoHub</span><span class='footer-sep'>&middot;</span><a href='https://github.com/HueByte/EchoHub'>GitHub</a><span class='footer-sep'>&middot;</span><a href='https://echohub.voidcube.cloud'>Website</a><span class='footer-sep'>&middot;</span><span class='footer-credit'>Built with <a href='https://dotnet.github.io/docfx'>DocFX</a></span></div></div>
</div>
</div>
</footer>
</body>
</html>
+4
View File
@@ -94,6 +94,10 @@
<h3 id="classes">
Classes
</h3>
<dl class="jumplist">
<dt><a class="xref" href="EchoHub.Server.Setup.DataMigrationService.html">DataMigrationService</a></dt>
<dd></dd>
</dl>
<dl class="jumplist">
<dt><a class="xref" href="EchoHub.Server.Setup.DatabaseSetup.html">DatabaseSetup</a></dt>
<dd></dd>
+60
View File
@@ -62,6 +62,9 @@
<li>
<a href="client/EchoHub.Client.Config.ConfigManager.html" name="" title="ConfigManager">ConfigManager</a>
</li>
<li>
<a href="client/EchoHub.Client.Config.NotificationConfig.html" name="" title="NotificationConfig">NotificationConfig</a>
</li>
<li>
<a href="client/EchoHub.Client.Config.SavedServer.html" name="" title="SavedServer">SavedServer</a>
</li>
@@ -78,6 +81,12 @@
<li>
<a href="client/EchoHub.Client.Services.EchoHubConnection.html" name="" title="EchoHubConnection">EchoHubConnection</a>
</li>
<li>
<a href="client/EchoHub.Client.Services.NotificationSoundService.html" name="" title="NotificationSoundService">NotificationSoundService</a>
</li>
<li>
<a href="client/EchoHub.Client.Services.UpdateChecker.html" name="" title="UpdateChecker">UpdateChecker</a>
</li>
</ul>
</li>
<li>
@@ -101,6 +110,9 @@
<a href="client/EchoHub.Client.UI.html" name="" title="EchoHub.Client.UI">EchoHub.Client.UI</a>
<ul class="nav level4">
<li>
<a href="client/EchoHub.Client.UI.ChannelListSource.html" name="" title="ChannelListSource">ChannelListSource</a>
</li>
<li>
<a href="client/EchoHub.Client.UI.ChatColors.html" name="" title="ChatColors">ChatColors</a>
</li>
@@ -128,6 +140,9 @@
<li>
<a href="client/EchoHub.Client.UI.CreateChannelResult.html" name="" title="CreateChannelResult">CreateChannelResult</a>
</li>
<li>
<a href="client/EchoHub.Client.UI.EmojiHelper.html" name="" title="EmojiHelper">EmojiHelper</a>
</li>
<li>
<a href="client/EchoHub.Client.UI.MainWindow.html" name="" title="MainWindow">MainWindow</a>
</li>
@@ -149,6 +164,9 @@
<li>
<a href="client/EchoHub.Client.UI.StatusDialogResult.html" name="" title="StatusDialogResult">StatusDialogResult</a>
</li>
<li>
<a href="client/EchoHub.Client.UI.UserListSource.html" name="" title="UserListSource">UserListSource</a>
</li>
</ul>
</li>
</ul>
@@ -205,18 +223,30 @@
<a href="core/EchoHub.Core.DTOs.html" name="" title="EchoHub.Core.DTOs">EchoHub.Core.DTOs</a>
<ul class="nav level4">
<li>
<a href="core/EchoHub.Core.DTOs.AssignRoleRequest.html" name="" title="AssignRoleRequest">AssignRoleRequest</a>
</li>
<li>
<a href="core/EchoHub.Core.DTOs.AvatarUploadResponse.html" name="" title="AvatarUploadResponse">AvatarUploadResponse</a>
</li>
<li>
<a href="core/EchoHub.Core.DTOs.BanRequest.html" name="" title="BanRequest">BanRequest</a>
</li>
<li>
<a href="core/EchoHub.Core.DTOs.ChannelDto.html" name="" title="ChannelDto">ChannelDto</a>
</li>
<li>
<a href="core/EchoHub.Core.DTOs.CreateChannelRequest.html" name="" title="CreateChannelRequest">CreateChannelRequest</a>
</li>
<li>
<a href="core/EchoHub.Core.DTOs.EmbedDto.html" name="" title="EmbedDto">EmbedDto</a>
</li>
<li>
<a href="core/EchoHub.Core.DTOs.ErrorResponse.html" name="" title="ErrorResponse">ErrorResponse</a>
</li>
<li>
<a href="core/EchoHub.Core.DTOs.KickRequest.html" name="" title="KickRequest">KickRequest</a>
</li>
<li>
<a href="core/EchoHub.Core.DTOs.LoginRequest.html" name="" title="LoginRequest">LoginRequest</a>
</li>
@@ -226,6 +256,9 @@
<li>
<a href="core/EchoHub.Core.DTOs.MessageDto.html" name="" title="MessageDto">MessageDto</a>
</li>
<li>
<a href="core/EchoHub.Core.DTOs.MuteRequest.html" name="" title="MuteRequest">MuteRequest</a>
</li>
<li>
<a href="core/EchoHub.Core.DTOs.PaginatedResponse-1.html" name="" title="PaginatedResponse&lt;T&gt;">PaginatedResponse&lt;T&gt;</a>
</li>
@@ -272,6 +305,9 @@
<li>
<a href="core/EchoHub.Core.Models.Channel.html" name="" title="Channel">Channel</a>
</li>
<li>
<a href="core/EchoHub.Core.Models.ChannelMembership.html" name="" title="ChannelMembership">ChannelMembership</a>
</li>
<li>
<a href="core/EchoHub.Core.Models.Message.html" name="" title="Message">Message</a>
</li>
@@ -281,6 +317,9 @@
<li>
<a href="core/EchoHub.Core.Models.RefreshToken.html" name="" title="RefreshToken">RefreshToken</a>
</li>
<li>
<a href="core/EchoHub.Core.Models.ServerRole.html" name="" title="ServerRole">ServerRole</a>
</li>
<li>
<a href="core/EchoHub.Core.Models.User.html" name="" title="User">User</a>
</li>
@@ -330,6 +369,9 @@
<li>
<a href="server/EchoHub.Server.Controllers.FilesController.html" name="" title="FilesController">FilesController</a>
</li>
<li>
<a href="server/EchoHub.Server.Controllers.ModerationController.html" name="" title="ModerationController">ModerationController</a>
</li>
<li>
<a href="server/EchoHub.Server.Controllers.ServerController.html" name="" title="ServerController">ServerController</a>
</li>
@@ -353,6 +395,18 @@
<a href="server/EchoHub.Server.Data.Migrations.html" name="" title="EchoHub.Server.Data.Migrations">EchoHub.Server.Data.Migrations</a>
<ul class="nav level4">
<li>
<a href="server/EchoHub.Server.Data.Migrations.AddChannelIsPublic.html" name="" title="AddChannelIsPublic">AddChannelIsPublic</a>
</li>
<li>
<a href="server/EchoHub.Server.Data.Migrations.AddChannelMembership.html" name="" title="AddChannelMembership">AddChannelMembership</a>
</li>
<li>
<a href="server/EchoHub.Server.Data.Migrations.AddMessageEmbed.html" name="" title="AddMessageEmbed">AddMessageEmbed</a>
</li>
<li>
<a href="server/EchoHub.Server.Data.Migrations.AddModerationRoles.html" name="" title="AddModerationRoles">AddModerationRoles</a>
</li>
<li>
<a href="server/EchoHub.Server.Data.Migrations.InitialCreate.html" name="" title="InitialCreate">InitialCreate</a>
</li>
@@ -385,6 +439,9 @@
<li>
<a href="server/EchoHub.Server.Services.ImageToAsciiService.html" name="" title="ImageToAsciiService">ImageToAsciiService</a>
</li>
<li>
<a href="server/EchoHub.Server.Services.LinkEmbedService.html" name="" title="LinkEmbedService">LinkEmbedService</a>
</li>
<li>
<a href="server/EchoHub.Server.Services.PresenceTracker.html" name="" title="PresenceTracker">PresenceTracker</a>
</li>
@@ -401,6 +458,9 @@
<a href="server/EchoHub.Server.Setup.html" name="" title="EchoHub.Server.Setup">EchoHub.Server.Setup</a>
<ul class="nav level4">
<li>
<a href="server/EchoHub.Server.Setup.DataMigrationService.html" name="" title="DataMigrationService">DataMigrationService</a>
</li>
<li>
<a href="server/EchoHub.Server.Setup.DatabaseSetup.html" name="" title="DatabaseSetup">DatabaseSetup</a>
</li>
+1 -1
View File
File diff suppressed because one or more lines are too long
+142
View File
@@ -0,0 +1,142 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Notification Sounds | EchoHub Documentation </title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="title" content="Notification Sounds | EchoHub Documentation ">
<link rel="icon" href="../images/hue_icon.svg">
<link rel="stylesheet" href="../public/docfx.min.css">
<link rel="stylesheet" href="../public/main.css">
<meta name="docfx:navrel" content="../toc.html">
<meta name="docfx:tocrel" content="toc.html">
<meta name="docfx:rel" content="../">
<meta name="docfx:docurl" content="https://github.com/HueByte/EchoHub/blob/master/docs/#L1">
<meta name="loc:inThisArticle" content="In this article">
<meta name="loc:searchResultsCount" content="{count} results for &quot;{query}&quot;">
<meta name="loc:searchNoResults" content="No results for &quot;{query}&quot;">
<meta name="loc:tocFilter" content="Filter by title">
<meta name="loc:nextArticle" content="Next">
<meta name="loc:prevArticle" content="Previous">
<meta name="loc:themeLight" content="Light">
<meta name="loc:themeDark" content="Dark">
<meta name="loc:themeAuto" content="Auto">
<meta name="loc:changeTheme" content="Change theme">
<meta name="loc:copy" content="Copy">
<meta name="loc:downloadPdf" content="Download PDF">
<script type="module" src="./../public/docfx.min.js"></script>
<script>
const theme = localStorage.getItem('theme') || 'auto'
document.documentElement.setAttribute('data-bs-theme', theme === 'auto' ? (window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light') : theme)
</script>
</head>
<body class="tex2jax_ignore" data-layout="" data-yaml-mime="">
<header class="bg-body border-bottom">
<nav id="autocollapse" class="navbar navbar-expand-md" role="navigation">
<div class="container-xxl flex-nowrap">
<a class="navbar-brand" href="../index.html">
<img id="logo" class="svg" src="../images/hue_icon.svg" alt="EchoHub">
EchoHub
</a>
<button class="btn btn-lg d-md-none border-0" type="button" data-bs-toggle="collapse" data-bs-target="#navpanel" aria-controls="navpanel" aria-expanded="false" aria-label="Toggle navigation">
<i class="bi bi-three-dots"></i>
</button>
<div class="collapse navbar-collapse" id="navpanel">
<div id="navbar">
<form class="search" role="search" id="search">
<i class="bi bi-search"></i>
<input class="form-control" id="search-query" type="search" disabled placeholder="Search" autocomplete="off" aria-label="Search">
</form>
</div>
</div>
</div>
</nav>
</header>
<main class="container-xxl">
<div class="toc-offcanvas">
<div class="offcanvas-md offcanvas-start" tabindex="-1" id="tocOffcanvas" aria-labelledby="tocOffcanvasLabel">
<div class="offcanvas-header">
<h5 class="offcanvas-title" id="tocOffcanvasLabel">Table of Contents</h5>
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" data-bs-target="#tocOffcanvas" aria-label="Close"></button>
</div>
<div class="offcanvas-body">
<nav class="toc" id="toc"></nav>
</div>
</div>
</div>
<div class="content">
<div class="actionbar">
<button class="btn btn-lg border-0 d-md-none" type="button" data-bs-toggle="offcanvas" data-bs-target="#tocOffcanvas" aria-controls="tocOffcanvas" aria-expanded="false" aria-label="Show table of contents">
<i class="bi bi-list"></i>
</button>
<nav id="breadcrumb"></nav>
</div>
<article data-uid="">
<h1 id="notification-sounds">Notification Sounds</h1>
<p>EchoHub can play a notification sound when someone @mentions you. This is <strong>disabled by default</strong> and must be enabled in your profile settings.</p>
<h2 id="enabling-notifications">Enabling Notifications</h2>
<p>Open your profile (<code>/profile</code>) and check the <strong>&quot;Notification sound on @mention&quot;</strong> checkbox, then save. You can also adjust the <strong>Volume</strong> (0-100, default 30). All settings are persisted in <code>~/.echohub/config.json</code>.</p>
<h2 id="customizing-the-sound">Customizing the Sound</h2>
<p>The client ships with a default <code>Notification.mp3</code> in the <code>Assets</code> folder. To use your own notification sound, replace the file at:</p>
<pre><code class="lang-text">&lt;app-directory&gt;/Assets/Notification.mp3
</code></pre>
<p>The file must be a valid <code>.mp3</code> or <code>.wav</code> audio file. The replacement takes effect on the next app launch.</p>
<p>Alternatively, set a custom path in <code>~/.echohub/config.json</code>:</p>
<pre><code class="lang-json">{
&quot;notifications&quot;: {
&quot;enabled&quot;: true,
&quot;volume&quot;: 30,
&quot;soundFile&quot;: &quot;/path/to/your/sound.mp3&quot;
}
}
</code></pre>
<p>When <code>soundFile</code> is set, EchoHub uses that file instead of the bundled default.</p>
<h2 id="disabling-notifications">Disabling Notifications</h2>
<p>Uncheck the option in your profile, or edit the config directly:</p>
<pre><code class="lang-json">{
&quot;notifications&quot;: {
&quot;enabled&quot;: false
}
}
</code></pre>
</article>
<div class="contribution d-print-none">
<a href="https://github.com/HueByte/EchoHub/blob/master/docs/#L1" class="edit-link">Edit this page</a>
</div>
<div class="next-article d-print-none border-top" id="nextArticle"></div>
</div>
<div class="affix">
<nav id="affix"></nav>
</div>
</main>
<div class="container-xxl search-results" id="search-results"></div>
<footer class="border-top text-secondary">
<div class="container-xxl">
<div class="flex-fill">
<div class='footer-custom'><div class='footer-inner'><span class='footer-brand'>EchoHub</span><span class='footer-sep'>&middot;</span><a href='https://github.com/HueByte/EchoHub'>GitHub</a><span class='footer-sep'>&middot;</span><a href='https://echohub.voidcube.cloud'>Website</a><span class='footer-sep'>&middot;</span><span class='footer-credit'>Built with <a href='https://dotnet.github.io/docfx'>DocFX</a></span></div></div>
</div>
</div>
</footer>
</body>
</html>
+1
View File
@@ -90,6 +90,7 @@
<p>Release history for EchoHub.</p>
<h2 id="releases">Releases</h2>
<ul>
<li><a href="v0.2.3.html">v0.2.3</a> - Moderation, Embeds &amp; UI Overhaul</li>
<li><a href="v0.2.2.html">v0.2.2</a> - Startup &amp; Shutdown Fixes</li>
<li><a href="v0.2.1.html">v0.2.1</a> - Shutdown &amp; CI Fixes</li>
<li><a href="v0.2.0.html">v0.2.0</a> - IRC Gateway</li>
+3
View File
@@ -15,6 +15,9 @@
<li>
<a href="index.html" name="" title="Overview">Overview</a>
</li>
<li>
<a href="v0.2.3.html" name="" title="v0.2.3">v0.2.3</a>
</li>
<li>
<a href="v0.2.2.html" name="" title="v0.2.2">v0.2.2</a>
</li>
+1 -1
View File
@@ -1,2 +1,2 @@
{"items":[{"name":"Overview","href":"index.html","topicHref":"index.html"},{"name":"v0.2.2","href":"v0.2.2.html","topicHref":"v0.2.2.html"},{"name":"v0.2.1","href":"v0.2.1.html","topicHref":"v0.2.1.html"},{"name":"v0.2.0","href":"v0.2.0.html","topicHref":"v0.2.0.html"},{"name":"v0.1.1","href":"v0.1.1.html","topicHref":"v0.1.1.html"},{"name":"v0.1.0","href":"v0.1.0.html","topicHref":"v0.1.0.html"}]}
{"items":[{"name":"Overview","href":"index.html","topicHref":"index.html"},{"name":"v0.2.3","href":"v0.2.3.html","topicHref":"v0.2.3.html"},{"name":"v0.2.2","href":"v0.2.2.html","topicHref":"v0.2.2.html"},{"name":"v0.2.1","href":"v0.2.1.html","topicHref":"v0.2.1.html"},{"name":"v0.2.0","href":"v0.2.0.html","topicHref":"v0.2.0.html"},{"name":"v0.1.1","href":"v0.1.1.html","topicHref":"v0.1.1.html"},{"name":"v0.1.0","href":"v0.1.0.html","topicHref":"v0.1.0.html"}]}
+209
View File
@@ -0,0 +1,209 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>v0.2.3 - Moderation, Embeds &amp; UI Overhaul | EchoHub Documentation </title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="title" content="v0.2.3 - Moderation, Embeds &amp; UI Overhaul | EchoHub Documentation ">
<link rel="icon" href="../images/hue_icon.svg">
<link rel="stylesheet" href="../public/docfx.min.css">
<link rel="stylesheet" href="../public/main.css">
<meta name="docfx:navrel" content="../toc.html">
<meta name="docfx:tocrel" content="toc.html">
<meta name="docfx:rel" content="../">
<meta name="docfx:docurl" content="https://github.com/HueByte/EchoHub/blob/master/docs/#L1">
<meta name="loc:inThisArticle" content="In this article">
<meta name="loc:searchResultsCount" content="{count} results for &quot;{query}&quot;">
<meta name="loc:searchNoResults" content="No results for &quot;{query}&quot;">
<meta name="loc:tocFilter" content="Filter by title">
<meta name="loc:nextArticle" content="Next">
<meta name="loc:prevArticle" content="Previous">
<meta name="loc:themeLight" content="Light">
<meta name="loc:themeDark" content="Dark">
<meta name="loc:themeAuto" content="Auto">
<meta name="loc:changeTheme" content="Change theme">
<meta name="loc:copy" content="Copy">
<meta name="loc:downloadPdf" content="Download PDF">
<script type="module" src="./../public/docfx.min.js"></script>
<script>
const theme = localStorage.getItem('theme') || 'auto'
document.documentElement.setAttribute('data-bs-theme', theme === 'auto' ? (window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light') : theme)
</script>
</head>
<body class="tex2jax_ignore" data-layout="" data-yaml-mime="">
<header class="bg-body border-bottom">
<nav id="autocollapse" class="navbar navbar-expand-md" role="navigation">
<div class="container-xxl flex-nowrap">
<a class="navbar-brand" href="../index.html">
<img id="logo" class="svg" src="../images/hue_icon.svg" alt="EchoHub">
EchoHub
</a>
<button class="btn btn-lg d-md-none border-0" type="button" data-bs-toggle="collapse" data-bs-target="#navpanel" aria-controls="navpanel" aria-expanded="false" aria-label="Toggle navigation">
<i class="bi bi-three-dots"></i>
</button>
<div class="collapse navbar-collapse" id="navpanel">
<div id="navbar">
<form class="search" role="search" id="search">
<i class="bi bi-search"></i>
<input class="form-control" id="search-query" type="search" disabled placeholder="Search" autocomplete="off" aria-label="Search">
</form>
</div>
</div>
</div>
</nav>
</header>
<main class="container-xxl">
<div class="toc-offcanvas">
<div class="offcanvas-md offcanvas-start" tabindex="-1" id="tocOffcanvas" aria-labelledby="tocOffcanvasLabel">
<div class="offcanvas-header">
<h5 class="offcanvas-title" id="tocOffcanvasLabel">Table of Contents</h5>
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" data-bs-target="#tocOffcanvas" aria-label="Close"></button>
</div>
<div class="offcanvas-body">
<nav class="toc" id="toc"></nav>
</div>
</div>
</div>
<div class="content">
<div class="actionbar">
<button class="btn btn-lg border-0 d-md-none" type="button" data-bs-toggle="offcanvas" data-bs-target="#tocOffcanvas" aria-controls="tocOffcanvas" aria-expanded="false" aria-label="Show table of contents">
<i class="bi bi-list"></i>
</button>
<nav id="breadcrumb"></nav>
</div>
<article data-uid="">
<h1 id="v023---moderation-embeds--ui-overhaul">v0.2.3 - Moderation, Embeds &amp; UI Overhaul</h1>
<h2 id="features">Features</h2>
<h3 id="moderation-system">Moderation System</h3>
<ul>
<li>Added server roles: Owner, Admin, Mod, Member — first registered user is automatically Owner</li>
<li>New <code>/kick</code>, <code>/ban</code>, <code>/unban</code>, <code>/mute</code>, <code>/unmute</code>, <code>/role</code>, <code>/nuke</code> commands for moderators and admins</li>
<li><code>ModerationController</code> with full REST API for role assignment, kicks, bans, mutes, message deletion, and channel nuking</li>
<li>Mutes support optional duration (auto-expire) and blocked users cannot log in</li>
<li>Role claim included in JWT tokens; role badges shown in the online users panel</li>
<li>Kicked and banned users are forcibly disconnected in real time — server cleans up presence, broadcasts departures, and signals client disconnect</li>
<li>Works for both SignalR and IRC connections; client shows an error dialog with the reason</li>
</ul>
<h3 id="private-channels">Private Channels</h3>
<ul>
<li>Channels can be created as public or private via a checkbox in the Create Channel dialog</li>
<li>Public channels are visible to all users; private channels only appear for members who joined them</li>
<li>Persistent channel membership tracked in the database (<code>ChannelMembership</code> table)</li>
<li><code>GET /api/channels</code> returns the combined list: public channels + user's joined private channels</li>
<li>Channel creators are automatically added as members</li>
</ul>
<h3 id="opengraph-link-embeds">OpenGraph Link Embeds</h3>
<ul>
<li>Messages containing URLs now show a rich preview below the message text</li>
<li>Multiple URLs per message supported (up to 3) — each gets its own embed</li>
<li>Server-side fetching: detects URLs in a message, fetches each page, and parses OpenGraph meta tags (<code>og:title</code>, <code>og:description</code>, <code>og:site_name</code>)</li>
<li>Embeds are persisted in the database as a JSON array and included in channel history</li>
<li>TUI client renders embeds with a <code></code> left border bar — site name and border in blue, title in white, description in gray; text word-wraps at actual viewport width</li>
<li>IRC gateway receives a text-only embed preview (site name, title, description)</li>
<li>Falls back to <code>&lt;title&gt;</code> tag when no OG tags are present; gracefully skips if no useful metadata is found</li>
<li>5-second fetch timeout ensures message delivery is never significantly delayed</li>
<li>SSRF protection rejects private/loopback IP addresses before fetching</li>
</ul>
<h3 id="notification-sounds">Notification Sounds</h3>
<ul>
<li>Incoming messages play a notification sound when the terminal is not focused</li>
<li>Embedded MP3 asset with cross-platform playback support</li>
</ul>
<h3 id="online-users-panel">Online Users Panel</h3>
<ul>
<li>Collapsible right-side panel showing online users in the current channel (toggle with F2)</li>
<li>Users displayed with status indicators, role badges, and their custom nickname colors</li>
<li>Panel updates on join, leave, and status change events</li>
</ul>
<h3 id="-highlighting">@mention Highlighting</h3>
<ul>
<li><code>@username</code> text rendered in orange accent color in all messages</li>
<li>Messages mentioning the current user get a full-line amber background highlight</li>
<li>Works across multi-line messages and continuation lines</li>
</ul>
<h3 id="ascii-art-improvements">ASCII Art Improvements</h3>
<ul>
<li>Half-block character rendering (<code></code>/<code></code>) with separate foreground + background colors for 2x vertical resolution</li>
<li>Switched from ANSI escape codes to printable color tags (<code>{F:RRGGBB}</code>, <code>{B:RRGGBB}</code>, <code>{X}</code>) — no control bytes in stored content</li>
<li>Optional size parameter for <code>/send</code> command: <code>-s</code> (40x40), <code>-m</code> (80x80, default), <code>-l</code> (120x120)</li>
<li>IRC gateway converts color tags back to ANSI for IRC client compatibility</li>
</ul>
<h3 id="client-ui">Client UI</h3>
<ul>
<li>Version number shown in the status bar</li>
<li>Custom colored rendering for channel list (active indicator, unread count badges)</li>
<li>Avatar upload field added to the profile edit dialog (file path or URL)</li>
<li>Profile avatar now renders with full color tag support in the profile view dialog</li>
<li>Update check notification on connect — shows a system message if a newer GitHub release exists</li>
<li>Chat messages no longer show selection/focus highlight</li>
<li>Exit shortcut changed from Ctrl+C to Alt+Q — frees Ctrl+C for copy</li>
<li>Default history increased from 50 to 100 messages on channel join</li>
</ul>
<h2 id="fixes">Fixes</h2>
<ul>
<li>Fixed <code>#general</code> channel not visible after adding the <code>IsPublic</code> column — migration default changed to <code>true</code> and startup service ensures it</li>
<li>Fixed channels disappearing when creating a new channel — replaced full re-fetch with incremental updates</li>
<li>Wired <code>OnChannelUpdated</code> SignalR event so new public channels appear for all connected users in real time</li>
<li>Fixed color tag parser using wrong regex group numbers (6,7,8 instead of 1,2,3) — new ASCII art was rendering without colors</li>
<li>Full Unicode/emoji support — renderers use Terminal.Gui v2 grapheme cluster API (<code>GraphemeHelper</code>, <code>AddStr</code>) for proper wide character handling</li>
<li>Emoji-to-text shortcode conversion for consistent cross-platform rendering</li>
<li>Fixed <code>/send</code> and <code>/avatar</code> commands not handling file paths with spaces correctly, even when quoted</li>
<li>Server-side newline spam protection — consecutive blank/whitespace-only lines collapsed to 1 and total lines capped at 30</li>
<li>Fixed OG tag regex truncating descriptions containing apostrophes (e.g. <code>&quot;HueByte's portfolio&quot;</code> was cut to <code>&quot;HueByte&quot;</code>) — switched to backreference-based quote pairing</li>
</ul>
<h2 id="infrastructure">Infrastructure</h2>
<ul>
<li>New <code>LinkEmbedService</code> on the server — URL detection, HTML fetching (first 64KB), OG tag parsing via compiled regex</li>
<li><code>EmbedDto</code> record added to shared Core DTOs; <code>MessageDto.Embeds</code> list for multiple embeds per message</li>
<li><code>EmbedJson</code> nullable column on the <code>Message</code> table stores serialized embed data as JSON array (max 8KB); <code>DataMigrationService</code> auto-migrates old single-object format</li>
<li>Dedicated <code>&quot;OgFetch&quot;</code> named HttpClient with bot User-Agent header and 5-second timeout</li>
<li><code>PresenceTracker.ForceRemoveUser()</code> for atomic user cleanup on kick/ban</li>
<li><code>IChatBroadcaster.ForceDisconnectUserAsync()</code> and <code>IEchoHubClient.ForceDisconnect</code> for force-disconnect signaling</li>
<li><code>NotificationSoundService</code> for cross-platform audio playback of embedded notification sounds</li>
<li>Startup <code>DataMigrationService</code> automatically converts old ANSI-format messages to the new color tag format on server boot, logging the count of migrated records</li>
<li><code>EmojiHelper</code> utility for emoji-to-shortcode conversion</li>
<li>Heartbeat handling in <code>ServerDirectoryService</code> for connection health checks</li>
<li>Four new EF Core migrations: <code>AddModerationRoles</code>, <code>AddChannelIsPublic</code>, <code>AddChannelMembership</code>, <code>AddMessageEmbed</code></li>
<li><code>ChannelMembership</code> table with cascade delete on both channel and user removal</li>
</ul>
</article>
<div class="contribution d-print-none">
<a href="https://github.com/HueByte/EchoHub/blob/master/docs/#L1" class="edit-link">Edit this page</a>
</div>
<div class="next-article d-print-none border-top" id="nextArticle"></div>
</div>
<div class="affix">
<nav id="affix"></nav>
</div>
</main>
<div class="container-xxl search-results" id="search-results"></div>
<footer class="border-top text-secondary">
<div class="container-xxl">
<div class="flex-fill">
<div class='footer-custom'><div class='footer-inner'><span class='footer-brand'>EchoHub</span><span class='footer-sep'>&middot;</span><a href='https://github.com/HueByte/EchoHub'>GitHub</a><span class='footer-sep'>&middot;</span><a href='https://echohub.voidcube.cloud'>Website</a><span class='footer-sep'>&middot;</span><span class='footer-credit'>Built with <a href='https://dotnet.github.io/docfx'>DocFX</a></span></div></div>
</div>
</div>
</footer>
</body>
</html>
+153 -43
View File
File diff suppressed because one or more lines are too long
+301 -1
View File
@@ -122,6 +122,20 @@
"Title": "EchoHub.Client.Config.ConfigManager",
"Summary": null
},
{
"type": "ManagedReference",
"source_relative_path": "_api_meta/client/EchoHub.Client.Config.NotificationConfig.yml",
"output": {
".html": {
"relative_path": "api/client/EchoHub.Client.Config.NotificationConfig.html"
}
},
"version": "",
"Uid": null,
"IsMRef": true,
"Title": "EchoHub.Client.Config.NotificationConfig",
"Summary": null
},
{
"type": "ManagedReference",
"source_relative_path": "_api_meta/client/EchoHub.Client.Config.SavedServer.yml",
@@ -178,6 +192,34 @@
"Title": "EchoHub.Client.Services.EchoHubConnection",
"Summary": null
},
{
"type": "ManagedReference",
"source_relative_path": "_api_meta/client/EchoHub.Client.Services.NotificationSoundService.yml",
"output": {
".html": {
"relative_path": "api/client/EchoHub.Client.Services.NotificationSoundService.html"
}
},
"version": "",
"Uid": null,
"IsMRef": true,
"Title": "EchoHub.Client.Services.NotificationSoundService",
"Summary": null
},
{
"type": "ManagedReference",
"source_relative_path": "_api_meta/client/EchoHub.Client.Services.UpdateChecker.yml",
"output": {
".html": {
"relative_path": "api/client/EchoHub.Client.Services.UpdateChecker.html"
}
},
"version": "",
"Uid": null,
"IsMRef": true,
"Title": "EchoHub.Client.Services.UpdateChecker",
"Summary": null
},
{
"type": "ManagedReference",
"source_relative_path": "_api_meta/client/EchoHub.Client.Services.yml",
@@ -248,6 +290,20 @@
"Title": "EchoHub.Client.Themes",
"Summary": null
},
{
"type": "ManagedReference",
"source_relative_path": "_api_meta/client/EchoHub.Client.UI.ChannelListSource.yml",
"output": {
".html": {
"relative_path": "api/client/EchoHub.Client.UI.ChannelListSource.html"
}
},
"version": "",
"Uid": null,
"IsMRef": true,
"Title": "EchoHub.Client.UI.ChannelListSource",
"Summary": "<p sourcefile=\"_api_meta/client/EchoHub.Client.UI.ChannelListSource.yml\" sourcestartlinenumber=\"1\">Custom list data source for colored channel list rendering.\nActive channel gets a &gt; indicator, unread channels are bright with a count badge.</p>\n"
},
{
"type": "ManagedReference",
"source_relative_path": "_api_meta/client/EchoHub.Client.UI.ChatColors.yml",
@@ -288,7 +344,7 @@
"Uid": null,
"IsMRef": true,
"Title": "EchoHub.Client.UI.ChatListSource",
"Summary": "<p sourcefile=\"_api_meta/client/EchoHub.Client.UI.ChatListSource.yml\" sourcestartlinenumber=\"1\">Custom list data source for chat messages with per-character coloring.</p>\n"
"Summary": "<p sourcefile=\"_api_meta/client/EchoHub.Client.UI.ChatListSource.yml\" sourcestartlinenumber=\"1\">Custom list data source for chat messages with per-segment coloring.</p>\n"
},
{
"type": "ManagedReference",
@@ -374,6 +430,20 @@
"Title": "EchoHub.Client.UI.CreateChannelResult",
"Summary": null
},
{
"type": "ManagedReference",
"source_relative_path": "_api_meta/client/EchoHub.Client.UI.EmojiHelper.yml",
"output": {
".html": {
"relative_path": "api/client/EchoHub.Client.UI.EmojiHelper.html"
}
},
"version": "",
"Uid": null,
"IsMRef": true,
"Title": "EchoHub.Client.UI.EmojiHelper",
"Summary": "<p sourcefile=\"_api_meta/client/EchoHub.Client.UI.EmojiHelper.yml\" sourcestartlinenumber=\"1\">Converts emoji grapheme clusters to text shortcodes for safe TUI rendering.\nTerminal width calculations for emoji are unreliable across different terminals,\nso we replace them with fixed-width ASCII shortcodes for display only.</p>\n"
},
{
"type": "ManagedReference",
"source_relative_path": "_api_meta/client/EchoHub.Client.UI.MainWindow.yml",
@@ -472,6 +542,20 @@
"Title": "EchoHub.Client.UI.StatusDialogResult",
"Summary": "<p sourcefile=\"_api_meta/client/EchoHub.Client.UI.StatusDialogResult.yml\" sourcestartlinenumber=\"1\">Result returned from the status dialog.</p>\n"
},
{
"type": "ManagedReference",
"source_relative_path": "_api_meta/client/EchoHub.Client.UI.UserListSource.yml",
"output": {
".html": {
"relative_path": "api/client/EchoHub.Client.UI.UserListSource.html"
}
},
"version": "",
"Uid": null,
"IsMRef": true,
"Title": "EchoHub.Client.UI.UserListSource",
"Summary": "<p sourcefile=\"_api_meta/client/EchoHub.Client.UI.UserListSource.yml\" sourcestartlinenumber=\"1\">Custom list data source for the online users panel with per-user nickname colors.</p>\n"
},
{
"type": "ManagedReference",
"source_relative_path": "_api_meta/client/EchoHub.Client.UI.yml",
@@ -612,6 +696,20 @@
"Title": "EchoHub.Core.Contracts",
"Summary": null
},
{
"type": "ManagedReference",
"source_relative_path": "_api_meta/core/EchoHub.Core.DTOs.AssignRoleRequest.yml",
"output": {
".html": {
"relative_path": "api/core/EchoHub.Core.DTOs.AssignRoleRequest.html"
}
},
"version": "",
"Uid": null,
"IsMRef": true,
"Title": "EchoHub.Core.DTOs.AssignRoleRequest",
"Summary": null
},
{
"type": "ManagedReference",
"source_relative_path": "_api_meta/core/EchoHub.Core.DTOs.AvatarUploadResponse.yml",
@@ -626,6 +724,20 @@
"Title": "EchoHub.Core.DTOs.AvatarUploadResponse",
"Summary": null
},
{
"type": "ManagedReference",
"source_relative_path": "_api_meta/core/EchoHub.Core.DTOs.BanRequest.yml",
"output": {
".html": {
"relative_path": "api/core/EchoHub.Core.DTOs.BanRequest.html"
}
},
"version": "",
"Uid": null,
"IsMRef": true,
"Title": "EchoHub.Core.DTOs.BanRequest",
"Summary": null
},
{
"type": "ManagedReference",
"source_relative_path": "_api_meta/core/EchoHub.Core.DTOs.ChannelDto.yml",
@@ -654,6 +766,20 @@
"Title": "EchoHub.Core.DTOs.CreateChannelRequest",
"Summary": null
},
{
"type": "ManagedReference",
"source_relative_path": "_api_meta/core/EchoHub.Core.DTOs.EmbedDto.yml",
"output": {
".html": {
"relative_path": "api/core/EchoHub.Core.DTOs.EmbedDto.html"
}
},
"version": "",
"Uid": null,
"IsMRef": true,
"Title": "EchoHub.Core.DTOs.EmbedDto",
"Summary": null
},
{
"type": "ManagedReference",
"source_relative_path": "_api_meta/core/EchoHub.Core.DTOs.ErrorResponse.yml",
@@ -668,6 +794,20 @@
"Title": "EchoHub.Core.DTOs.ErrorResponse",
"Summary": null
},
{
"type": "ManagedReference",
"source_relative_path": "_api_meta/core/EchoHub.Core.DTOs.KickRequest.yml",
"output": {
".html": {
"relative_path": "api/core/EchoHub.Core.DTOs.KickRequest.html"
}
},
"version": "",
"Uid": null,
"IsMRef": true,
"Title": "EchoHub.Core.DTOs.KickRequest",
"Summary": null
},
{
"type": "ManagedReference",
"source_relative_path": "_api_meta/core/EchoHub.Core.DTOs.LoginRequest.yml",
@@ -710,6 +850,20 @@
"Title": "EchoHub.Core.DTOs.MessageDto",
"Summary": null
},
{
"type": "ManagedReference",
"source_relative_path": "_api_meta/core/EchoHub.Core.DTOs.MuteRequest.yml",
"output": {
".html": {
"relative_path": "api/core/EchoHub.Core.DTOs.MuteRequest.html"
}
},
"version": "",
"Uid": null,
"IsMRef": true,
"Title": "EchoHub.Core.DTOs.MuteRequest",
"Summary": null
},
{
"type": "ManagedReference",
"source_relative_path": "_api_meta/core/EchoHub.Core.DTOs.PaginatedResponse-1.yml",
@@ -906,6 +1060,20 @@
"Title": "EchoHub.Core.Models.Channel",
"Summary": null
},
{
"type": "ManagedReference",
"source_relative_path": "_api_meta/core/EchoHub.Core.Models.ChannelMembership.yml",
"output": {
".html": {
"relative_path": "api/core/EchoHub.Core.Models.ChannelMembership.html"
}
},
"version": "",
"Uid": null,
"IsMRef": true,
"Title": "EchoHub.Core.Models.ChannelMembership",
"Summary": null
},
{
"type": "ManagedReference",
"source_relative_path": "_api_meta/core/EchoHub.Core.Models.Message.yml",
@@ -948,6 +1116,20 @@
"Title": "EchoHub.Core.Models.RefreshToken",
"Summary": null
},
{
"type": "ManagedReference",
"source_relative_path": "_api_meta/core/EchoHub.Core.Models.ServerRole.yml",
"output": {
".html": {
"relative_path": "api/core/EchoHub.Core.Models.ServerRole.html"
}
},
"version": "",
"Uid": null,
"IsMRef": true,
"Title": "EchoHub.Core.Models.ServerRole",
"Summary": null
},
{
"type": "ManagedReference",
"source_relative_path": "_api_meta/core/EchoHub.Core.Models.User.yml",
@@ -1200,6 +1382,20 @@
"Title": "EchoHub.Server.Controllers.FilesController",
"Summary": null
},
{
"type": "ManagedReference",
"source_relative_path": "_api_meta/server/EchoHub.Server.Controllers.ModerationController.yml",
"output": {
".html": {
"relative_path": "api/server/EchoHub.Server.Controllers.ModerationController.html"
}
},
"version": "",
"Uid": null,
"IsMRef": true,
"Title": "EchoHub.Server.Controllers.ModerationController",
"Summary": null
},
{
"type": "ManagedReference",
"source_relative_path": "_api_meta/server/EchoHub.Server.Controllers.ServerController.yml",
@@ -1256,6 +1452,62 @@
"Title": "EchoHub.Server.Data.EchoHubDbContext",
"Summary": null
},
{
"type": "ManagedReference",
"source_relative_path": "_api_meta/server/EchoHub.Server.Data.Migrations.AddChannelIsPublic.yml",
"output": {
".html": {
"relative_path": "api/server/EchoHub.Server.Data.Migrations.AddChannelIsPublic.html"
}
},
"version": "",
"Uid": null,
"IsMRef": true,
"Title": "EchoHub.Server.Data.Migrations.AddChannelIsPublic",
"Summary": null
},
{
"type": "ManagedReference",
"source_relative_path": "_api_meta/server/EchoHub.Server.Data.Migrations.AddChannelMembership.yml",
"output": {
".html": {
"relative_path": "api/server/EchoHub.Server.Data.Migrations.AddChannelMembership.html"
}
},
"version": "",
"Uid": null,
"IsMRef": true,
"Title": "EchoHub.Server.Data.Migrations.AddChannelMembership",
"Summary": null
},
{
"type": "ManagedReference",
"source_relative_path": "_api_meta/server/EchoHub.Server.Data.Migrations.AddMessageEmbed.yml",
"output": {
".html": {
"relative_path": "api/server/EchoHub.Server.Data.Migrations.AddMessageEmbed.html"
}
},
"version": "",
"Uid": null,
"IsMRef": true,
"Title": "EchoHub.Server.Data.Migrations.AddMessageEmbed",
"Summary": null
},
{
"type": "ManagedReference",
"source_relative_path": "_api_meta/server/EchoHub.Server.Data.Migrations.AddModerationRoles.yml",
"output": {
".html": {
"relative_path": "api/server/EchoHub.Server.Data.Migrations.AddModerationRoles.html"
}
},
"version": "",
"Uid": null,
"IsMRef": true,
"Title": "EchoHub.Server.Data.Migrations.AddModerationRoles",
"Summary": null
},
{
"type": "ManagedReference",
"source_relative_path": "_api_meta/server/EchoHub.Server.Data.Migrations.InitialCreate.yml",
@@ -1382,6 +1634,20 @@
"Title": "EchoHub.Server.Services.ImageToAsciiService",
"Summary": null
},
{
"type": "ManagedReference",
"source_relative_path": "_api_meta/server/EchoHub.Server.Services.LinkEmbedService.yml",
"output": {
".html": {
"relative_path": "api/server/EchoHub.Server.Services.LinkEmbedService.html"
}
},
"version": "",
"Uid": null,
"IsMRef": true,
"Title": "EchoHub.Server.Services.LinkEmbedService",
"Summary": null
},
{
"type": "ManagedReference",
"source_relative_path": "_api_meta/server/EchoHub.Server.Services.PresenceTracker.yml",
@@ -1438,6 +1704,20 @@
"Title": "EchoHub.Server.Services",
"Summary": null
},
{
"type": "ManagedReference",
"source_relative_path": "_api_meta/server/EchoHub.Server.Setup.DataMigrationService.yml",
"output": {
".html": {
"relative_path": "api/server/EchoHub.Server.Setup.DataMigrationService.html"
}
},
"version": "",
"Uid": null,
"IsMRef": true,
"Title": "EchoHub.Server.Setup.DataMigrationService",
"Summary": null
},
{
"type": "ManagedReference",
"source_relative_path": "_api_meta/server/EchoHub.Server.Setup.DatabaseSetup.yml",
@@ -1592,6 +1872,16 @@
},
"version": ""
},
{
"type": "Conceptual",
"source_relative_path": "articles/notification-sounds.md",
"output": {
".html": {
"relative_path": "articles/notification-sounds.html"
}
},
"version": ""
},
{
"type": "Toc",
"source_relative_path": "articles/toc.yml",
@@ -1678,6 +1968,16 @@
},
"version": ""
},
{
"type": "Conceptual",
"source_relative_path": "changelog/v0.2.3.md",
"output": {
".html": {
"relative_path": "changelog/v0.2.3.html"
}
},
"version": ""
},
{
"type": "Resource",
"source_relative_path": "images/hue_icon.svg",
+3129 -204
View File
File diff suppressed because it is too large Load Diff