mirror of
https://github.com/Tyrrrz/DiscordChatExporter.git
synced 2025-05-10 18:06:37 +02:00
Apply same logic to --before
This commit is contained in:
parent
20ca762da3
commit
e68604b964
2 changed files with 874 additions and 15 deletions
|
@ -37,8 +37,9 @@ public class ChannelExporter(DiscordClient discord)
|
|||
);
|
||||
}
|
||||
|
||||
// Check if the 'after' boundary is valid
|
||||
if (request.After is not null && !request.Channel.MayHaveMessagesAfter(request.After.Value))
|
||||
// Check if the 'before' and 'after' boundaries are valid
|
||||
if ((request.Before is not null && !request.Channel.MayHaveMessagesBefore(request.Before.Value)) ||
|
||||
(request.After is not null && !request.Channel.MayHaveMessagesAfter(request.After.Value)))
|
||||
{
|
||||
Console.Error.WriteLine(
|
||||
$"NOTE: Channel '{request.Channel.Name}' "
|
||||
|
@ -47,19 +48,6 @@ public class ChannelExporter(DiscordClient discord)
|
|||
);
|
||||
}
|
||||
|
||||
// Check if the 'before' boundary is valid
|
||||
if (
|
||||
request.Before is not null
|
||||
&& !request.Channel.MayHaveMessagesBefore(request.Before.Value)
|
||||
)
|
||||
{
|
||||
throw new DiscordChatExporterException(
|
||||
$"Channel '{request.Channel.Name}' "
|
||||
+ $"of guild '{request.Guild.Name}' "
|
||||
+ $"does not contain any messages within the specified period."
|
||||
);
|
||||
}
|
||||
|
||||
// Build context
|
||||
var context = new ExportContext(discord, request);
|
||||
await context.PopulateChannelsAndRolesAsync(cancellationToken);
|
||||
|
|
871
tags
Normal file
871
tags
Normal file
|
@ -0,0 +1,871 @@
|
|||
!_TAG_FILE_FORMAT 2 /extended format; --format=1 will not append ;" to lines/
|
||||
!_TAG_FILE_SORTED 1 /0=unsorted, 1=sorted, 2=foldcase/
|
||||
!_TAG_OUTPUT_EXCMD mixed /number, pattern, mixed, or combineV2/
|
||||
!_TAG_OUTPUT_FILESEP slash /slash or backslash/
|
||||
!_TAG_OUTPUT_MODE u-ctags /u-ctags or e-ctags/
|
||||
!_TAG_PATTERN_LENGTH_LIMIT 96 /0 for no limit/
|
||||
!_TAG_PROC_CWD /zfs/data/src/ajenos/Tyrrrz/DiscordChatExporter/ //
|
||||
!_TAG_PROGRAM_AUTHOR Universal Ctags Team //
|
||||
!_TAG_PROGRAM_NAME Universal Ctags /Derived from Exuberant Ctags/
|
||||
!_TAG_PROGRAM_URL https://ctags.io/ /official site/
|
||||
!_TAG_PROGRAM_VERSION 5.9.0 //
|
||||
$schema DiscordChatExporter.Cli.Tests/xunit.runner.json /^ "$schema": "https:\/\/xunit.net\/schema\/current\/xunit.runner.schema.json",$/;" s
|
||||
Active DiscordChatExporter.Cli/Commands/Shared/ThreadInclusionMode.cs /^ Active,$/;" e enum:ThreadInclusionMode file:
|
||||
Active DiscordChatExporter.Gui/Models/ThreadInclusionMode.cs /^ Active,$/;" e enum:ThreadInclusionMode file:
|
||||
Add DiscordChatExporter.Gui/Utils/DisposableCollector.cs /^ public void Add(IDisposable item)$/;" m class:DisposableCollector
|
||||
After DiscordChatExporter.Cli/Commands/Base/ExportCommandBase.cs /^ public Snowflake? After { get; init; }$/;" p class:ExportCommandBase
|
||||
After DiscordChatExporter.Core/Exporting/ExportRequest.cs /^ public Snowflake? After { get; }$/;" p class:ExportRequest
|
||||
AggregateMatcher DiscordChatExporter.Core/Markdown/Parsing/AggregateMatcher.cs /^internal class AggregateMatcher<TContext, TValue>($/;" m
|
||||
All DiscordChatExporter.Cli/Commands/Shared/ThreadInclusionMode.cs /^ All,$/;" e enum:ThreadInclusionMode file:
|
||||
All DiscordChatExporter.Gui/Models/ThreadInclusionMode.cs /^ All,$/;" e enum:ThreadInclusionMode file:
|
||||
And DiscordChatExporter.Core/Exporting/Filtering/BinaryExpressionKind.cs /^ And,$/;" e enum:BinaryExpressionKind file:
|
||||
Apng DiscordChatExporter.Core/Discord/Data/StickerFormat.cs /^ Apng = 2,$/;" e enum:StickerFormat file:
|
||||
App DiscordChatExporter.Gui/App.axaml.cs /^ public App()$/;" m class:App
|
||||
App DiscordChatExporter.Gui/App.axaml.cs /^public class App : Application, IDisposable$/;" c
|
||||
AppendIfNotEmpty DiscordChatExporter.Core/Utils/Extensions/StringExtensions.cs /^ public static StringBuilder AppendIfNotEmpty(this StringBuilder builder, char value) =>$/;" m class:StringExtensions
|
||||
Application DiscordChatExporter.Core/Discord/Data/Application.cs /^public partial record Application$/;" p
|
||||
Application DiscordChatExporter.Core/Discord/Data/Application.cs /^public partial record Application(Snowflake Id, string Name, ApplicationFlags Flags)$/;" m
|
||||
ApplicationAutoModerationRuleCreateBadge DiscordChatExporter.Core/Discord/Data/ApplicationFlags.cs /^ ApplicationAutoModerationRuleCreateBadge = 64,$/;" e enum:ApplicationFlags file:
|
||||
ApplicationCommandBadge DiscordChatExporter.Core/Discord/Data/ApplicationFlags.cs /^ ApplicationCommandBadge = 8388608,$/;" e enum:ApplicationFlags file:
|
||||
ApplicationFlags DiscordChatExporter.Core/Discord/Data/ApplicationFlags.cs /^public enum ApplicationFlags$/;" g
|
||||
Assembly DiscordChatExporter.Gui/Program.cs /^ private static Assembly Assembly { get; } = Assembly.GetExecutingAssembly();$/;" p class:Program
|
||||
AssetsDirPath DiscordChatExporter.Cli/Commands/Base/ExportCommandBase.cs /^ public string? AssetsDirPath$/;" p class:ExportCommandBase
|
||||
AssetsDirPath DiscordChatExporter.Core/Exporting/ExportRequest.cs /^ public string AssetsDirPath { get; }$/;" p class:ExportRequest
|
||||
AsyncCollectionExtensions DiscordChatExporter.Core/Utils/Extensions/AsyncCollectionExtensions.cs /^public static class AsyncCollectionExtensions$/;" c
|
||||
Attachment DiscordChatExporter.Core/Discord/Data/Attachment.cs /^public partial record Attachment$/;" p
|
||||
Attachment DiscordChatExporter.Core/Discord/Data/Attachment.cs /^public partial record Attachment($/;" m
|
||||
AttachmentTestCases DiscordChatExporter.Cli.Tests/Infra/ChannelIds.cs /^ public static Snowflake AttachmentTestCases { get; } = Snowflake.Parse("885587741654536192")/;" p class:ChannelIds
|
||||
AutoLinkNodeMatcher DiscordChatExporter.Core/Markdown/Parsing/MarkdownParser.cs /^ private static readonly IMatcher<MarkdownContext, MarkdownNode> AutoLinkNodeMatcher =$/;" f class:MarkdownParser file:
|
||||
AvailableLocales DiscordChatExporter.Gui/ViewModels/Dialogs/SettingsViewModel.cs /^ public IReadOnlyList<string> AvailableLocales { get; } =$/;" p class:SettingsViewModel
|
||||
AvailableThemes DiscordChatExporter.Gui/ViewModels/Dialogs/SettingsViewModel.cs /^ public IReadOnlyList<ThemeVariant> AvailableThemes { get; } = Enum.GetValues<ThemeVariant>()/;" p class:SettingsViewModel
|
||||
AvailableThreadInclusionModes DiscordChatExporter.Gui/ViewModels/Dialogs/SettingsViewModel.cs /^ public IReadOnlyList<ThreadInclusionMode> AvailableThreadInclusionModes { get; } =$/;" p class:SettingsViewModel
|
||||
AvaloniaClockIdentifier DiscordChatExporter.Gui/Utils/Internationalization.cs /^ public static string AvaloniaClockIdentifier => Is24Hours ? "24HourClock" : "12HourClock";$/;" f class:Internationalization
|
||||
AvaloniaExtensions DiscordChatExporter.Gui/Utils/Extensions/AvaloniaExtensions.cs /^internal static class AvaloniaExtensions$/;" c
|
||||
Before DiscordChatExporter.Cli/Commands/Base/ExportCommandBase.cs /^ public Snowflake? Before { get; init; }$/;" p class:ExportCommandBase
|
||||
Before DiscordChatExporter.Core/Exporting/ExportRequest.cs /^ public Snowflake? Before { get; }$/;" p class:ExportRequest
|
||||
BinaryExpressionKind DiscordChatExporter.Core/Exporting/Filtering/BinaryExpressionKind.cs /^internal enum BinaryExpressionKind$/;" g
|
||||
BinaryExpressionMessageFilter DiscordChatExporter.Core/Exporting/Filtering/BinaryExpressionMessageFilter.cs /^internal class BinaryExpressionMessageFilter($/;" m
|
||||
BinaryExtensions DiscordChatExporter.Core/Utils/Extensions/BinaryExtensions.cs /^public static class BinaryExtensions$/;" c
|
||||
Bold DiscordChatExporter.Core/Markdown/FormattingKind.cs /^ Bold,$/;" e enum:FormattingKind file:
|
||||
BoldFormattingNodeMatcher DiscordChatExporter.Core/Markdown/Parsing/MarkdownParser.cs /^ private static readonly IMatcher<MarkdownContext, MarkdownNode> BoldFormattingNodeMatcher =$/;" f class:MarkdownParser file:
|
||||
Bot DiscordChatExporter.Core/Discord/TokenKind.cs /^ Bot,$/;" e enum:TokenKind file:
|
||||
Build DiscordChatExporter.Core/Utils/UrlBuilder.cs /^ public string Build()$/;" m class:UrlBuilder
|
||||
BuildAvaloniaApp DiscordChatExporter.Gui/Program.cs /^ public static AppBuilder BuildAvaloniaApp() =>$/;" m class:Program
|
||||
ButtonsCount DiscordChatExporter.Gui/ViewModels/Dialogs/MessageBoxViewModel.cs /^ public int ButtonsCount => (IsDefaultButtonVisible ? 1 : 0) + (IsCancelButtonVisible ? 1 : 0/;" f class:MessageBoxViewModel
|
||||
By editing the settings file .docs/Token-and-IDs.md /^#### By editing the settings file$/;" t subsection:Obtaining Token and Channel IDs""How to get a User Token""Through the desktop app / enabling web developer tools
|
||||
CLI .docs/Troubleshooting.md /^## CLI$/;" s chapter:Troubleshooting
|
||||
CLI Caveats .docs/Message-filters.md /^## CLI Caveats$/;" s chapter:Message filters
|
||||
CLI commands .docs/Using-the-CLI.md /^## CLI commands$/;" s chapter:Using the CLI
|
||||
CSV .docs/Getting-started.md /^### CSV$/;" S section:Getting started""File formats
|
||||
Call DiscordChatExporter.Core/Discord/Data/MessageKind.cs /^ Call = 3,$/;" e enum:MessageKind file:
|
||||
Can DCE add new messages to an existing export? .docs/Troubleshooting.md /^### Can DCE add new messages to an existing export?$/;" S section:Troubleshooting""General questions
|
||||
Can DCE download images? .docs/Troubleshooting.md /^### Can DCE download images?$/;" S section:Troubleshooting""General questions
|
||||
Can DCE export messages that have already been deleted? .docs/Troubleshooting.md /^### Can DCE export messages that have already been deleted?$/;" S section:Troubleshooting""General questions
|
||||
Can DCE export multiple formats at once? .docs/Troubleshooting.md /^### Can DCE export multiple formats at once?$/;" S section:Troubleshooting""General questions
|
||||
Can DCE export private chats? .docs/Troubleshooting.md /^### Can DCE export private chats?$/;" S section:Troubleshooting""General questions
|
||||
Can DCE recreate the exported chats in Discord? .docs/Troubleshooting.md /^### Can DCE recreate the exported chats in Discord?$/;" S section:Troubleshooting""General questions
|
||||
Can DCE reupload exported messages to another channel? .docs/Troubleshooting.md /^### Can DCE reupload exported messages to another channel?$/;" S section:Troubleshooting""General questions
|
||||
Can the exported chats be shared? .docs/Troubleshooting.md /^### Can the exported chats be shared?$/;" S section:Troubleshooting""General questions
|
||||
CanExport DiscordChatExporter.Gui/ViewModels/Components/DashboardViewModel.cs /^ private bool CanExport() =>$/;" m class:DashboardViewModel file:
|
||||
CanPullChannels DiscordChatExporter.Gui/ViewModels/Components/DashboardViewModel.cs /^ private bool CanPullChannels() => !IsBusy && _discord is not null && SelectedGuild is not nu/;" m class:DashboardViewModel file:
|
||||
CanPullGuilds DiscordChatExporter.Gui/ViewModels/Components/DashboardViewModel.cs /^ private bool CanPullGuilds() => !IsBusy && !string.IsNullOrWhiteSpace(Token);$/;" m class:DashboardViewModel file:
|
||||
ChainedFilter DiscordChatExporter.Core/Exporting/Filtering/Parsing/FilterGrammar.cs /^ private static readonly TextParser<MessageFilter> ChainedFilter = Parse.Chain($/;" f class:FilterGrammar file:
|
||||
Changing the date format .docs/Using-the-CLI.md /^#### Changing the date format$/;" t section:Using the CLI""Export a specific channel
|
||||
Changing the filename and output directory .docs/Using-the-CLI.md /^#### Changing the filename and output directory$/;" t section:Using the CLI""Export a specific channel
|
||||
Changing the format .docs/Using-the-CLI.md /^#### Changing the format$/;" t section:Using the CLI""Export a specific channel
|
||||
Changing the media directory .docs/Using-the-CLI.md /^#### Changing the media directory$/;" t section:Using the CLI""Export a specific channel
|
||||
Changing the output directory .docs/Using-the-CLI.md /^#### Changing the output directory$/;" t section:Using the CLI""Export a specific channel
|
||||
Changing the output filename .docs/Using-the-CLI.md /^#### Changing the output filename$/;" t section:Using the CLI""Export a specific channel
|
||||
Channel DiscordChatExporter.Core/Discord/Data/Channel.cs /^public partial record Channel$/;" p
|
||||
Channel DiscordChatExporter.Core/Discord/Data/Channel.cs /^public partial record Channel($/;" m
|
||||
Channel DiscordChatExporter.Core/Exporting/ExportRequest.cs /^ public Channel Channel { get; }$/;" p class:ExportRequest
|
||||
Channel DiscordChatExporter.Core/Markdown/MentionKind.cs /^ Channel,$/;" e enum:MentionKind file:
|
||||
ChannelConnection DiscordChatExporter.Core/Discord/Data/ChannelConnection.cs /^public record ChannelConnection(Channel Channel, IReadOnlyList<ChannelConnection> Children)$/;" m
|
||||
ChannelExporter DiscordChatExporter.Core/Exporting/ChannelExporter.cs /^public class ChannelExporter(DiscordClient discord)$/;" m
|
||||
ChannelIconChange DiscordChatExporter.Core/Discord/Data/MessageKind.cs /^ ChannelIconChange = 5,$/;" e enum:MessageKind file:
|
||||
ChannelIds DiscordChatExporter.Cli.Tests/Infra/ChannelIds.cs /^public static class ChannelIds$/;" c
|
||||
ChannelIds DiscordChatExporter.Cli/Commands/ExportChannelsCommand.cs /^ public required IReadOnlyList<Snowflake> ChannelIds { get; init; }$/;" p class:ExportChannelsCommand
|
||||
ChannelKind DiscordChatExporter.Core/Discord/Data/ChannelKind.cs /^public enum ChannelKind$/;" g
|
||||
ChannelMentionNodeMatcher DiscordChatExporter.Core/Markdown/Parsing/MarkdownParser.cs /^ private static readonly IMatcher<MarkdownContext, MarkdownNode> ChannelMentionNodeMatcher =$/;" f class:MarkdownParser file:
|
||||
ChannelNameChange DiscordChatExporter.Core/Discord/Data/MessageKind.cs /^ ChannelNameChange = 4,$/;" e enum:MessageKind file:
|
||||
ChannelPinnedMessage DiscordChatExporter.Core/Discord/Data/MessageKind.cs /^ ChannelPinnedMessage = 6,$/;" e enum:MessageKind file:
|
||||
ChannelToHierarchicalNameStringConverter DiscordChatExporter.Gui/Converters/ChannelToHierarchicalNameStringConverter.cs /^public class ChannelToHierarchicalNameStringConverter : IValueConverter$/;" c
|
||||
Children DiscordChatExporter.Core/Markdown/IContainerNode.cs /^ IReadOnlyList<MarkdownNode> Children { get; }$/;" p interface:IContainerNode
|
||||
Clamp DiscordChatExporter.Core/Utils/Extensions/TimeSpanExtensions.cs /^ public static TimeSpan Clamp(this TimeSpan value, TimeSpan min, TimeSpan max)$/;" m class:TimeSpanExtensions
|
||||
Client DiscordChatExporter.Core/Utils/Http.cs /^ public static HttpClient Client { get; } = new();$/;" p class:Http
|
||||
Close DiscordChatExporter.Gui/Framework/DialogVIewModelBase.cs /^ protected void Close(T dialogResult)$/;" m class:DialogViewModelBase
|
||||
CodedStandardEmojiNodeMatcher DiscordChatExporter.Core/Markdown/Parsing/MarkdownParser.cs /^ private static readonly IMatcher<MarkdownContext, MarkdownNode> CodedStandardEmojiNodeMatche/;" f class:MarkdownParser file:
|
||||
CollectAsync DiscordChatExporter.Core/Utils/Extensions/AsyncCollectionExtensions.cs /^ private static async ValueTask<IReadOnlyList<T>> CollectAsync<T>($/;" m class:AsyncCollectionExtensions file:
|
||||
CollectionExtensions DiscordChatExporter.Core/Utils/Extensions/CollectionExtensions.cs /^public static class CollectionExtensions$/;" c
|
||||
ColorExtensions DiscordChatExporter.Core/Utils/Extensions/ColorExtensions.cs /^public static class ColorExtensions$/;" c
|
||||
Command DiscordChatExporter.Gui/Views/Controls/HyperLink.axaml.cs /^ public ICommand? Command$/;" p class:HyperLink
|
||||
CommandParameter DiscordChatExporter.Gui/Views/Controls/HyperLink.axaml.cs /^ public object? CommandParameter$/;" p class:HyperLink
|
||||
CommandParameterProperty DiscordChatExporter.Gui/Views/Controls/HyperLink.axaml.cs /^ public static readonly StyledProperty<object?> CommandParameterProperty =$/;" f class:HyperLink
|
||||
CommandProperty DiscordChatExporter.Gui/Views/Controls/HyperLink.axaml.cs /^ public static readonly StyledProperty<ICommand?> CommandProperty =$/;" f class:HyperLink
|
||||
Configuration DiscordChatExporter.Cli.Tests/Infra/Secrets.cs /^ private static readonly IConfigurationRoot Configuration = new ConfigurationBuilder()$/;" f class:Secrets file:
|
||||
ConsoleExtensions DiscordChatExporter.Cli/Utils/Extensions/ConsoleExtensions.cs /^internal static class ConsoleExtensions$/;" c
|
||||
ContainsFilter DiscordChatExporter.Core/Exporting/Filtering/Parsing/FilterGrammar.cs /^ private static readonly TextParser<MessageFilter> ContainsFilter = String.Select(v =>$/;" f class:FilterGrammar file:
|
||||
ContainsMessageFilter DiscordChatExporter.Core/Exporting/Filtering/ContainsMessageFilter.cs /^internal class ContainsMessageFilter(string text) : MessageFilter$/;" m
|
||||
Convert DiscordChatExporter.Cli/Commands/Converters/ThreadInclusionModeBindingConverter.cs /^ public override ThreadInclusionMode Convert(string? rawValue)$/;" m class:ThreadInclusionModeBindingConverter
|
||||
Convert DiscordChatExporter.Cli/Commands/Converters/TruthyBooleanBindingConverter.cs /^ public override bool Convert(string? rawValue)$/;" m class:TruthyBooleanBindingConverter
|
||||
Create DiscordChatExporter.Cli.Tests/Utils/TempDir.cs /^ public static TempDir Create()$/;" m class:TempDir
|
||||
Create DiscordChatExporter.Cli.Tests/Utils/TempFile.cs /^ public static TempFile Create()$/;" m class:TempFile
|
||||
CreateAnsiConsole DiscordChatExporter.Cli/Utils/Extensions/ConsoleExtensions.cs /^ public static IAnsiConsole CreateAnsiConsole(this IConsole console) =>$/;" m class:ConsoleExtensions
|
||||
CreateMessageWriter DiscordChatExporter.Core/Exporting/MessageExporter.cs /^ private static MessageWriter CreateMessageWriter($/;" m class:MessageExporter file:
|
||||
CreateProgressTicker DiscordChatExporter.Cli/Utils/Extensions/ConsoleExtensions.cs /^ public static Progress CreateProgressTicker(this IConsole console) =>$/;" m class:ConsoleExtensions
|
||||
CreateStatusTicker DiscordChatExporter.Cli/Utils/Extensions/ConsoleExtensions.cs /^ public static Status CreateStatusTicker(this IConsole console) =>$/;" m class:ConsoleExtensions
|
||||
Creating the .plist file .docs/Scheduling-MacOS.md /^## Creating the .plist file$/;" s chapter:Scheduling exports on macOS
|
||||
Creating the script .docs/Scheduling-Linux.md /^## Creating the script$/;" s chapter:Scheduling exports with Cron
|
||||
Creating the script .docs/Scheduling-MacOS.md /^## Creating the script$/;" s chapter:Scheduling exports on macOS
|
||||
Creating the script .docs/Scheduling-Windows.md /^## Creating the script$/;" s chapter:Scheduling exports on Windows
|
||||
CrossPost DiscordChatExporter.Core/Discord/Data/MessageFlags.cs /^ CrossPost = 2,$/;" e enum:MessageFlags file:
|
||||
CrossPosted DiscordChatExporter.Core/Discord/Data/MessageFlags.cs /^ CrossPosted = 1,$/;" e enum:MessageFlags file:
|
||||
Csv DiscordChatExporter.Core/Exporting/ExportFormat.cs /^ Csv,$/;" e enum:ExportFormat file:
|
||||
CsvContentSpecs DiscordChatExporter.Cli.Tests/Specs/CsvContentSpecs.cs /^public class CsvContentSpecs$/;" c
|
||||
CsvEncode DiscordChatExporter.Core/Exporting/CsvMessageWriter.cs /^ private static string CsvEncode(string value)$/;" m class:CsvMessageWriter file:
|
||||
CsvMessageWriter DiscordChatExporter.Core/Exporting/CsvMessageWriter.cs /^internal partial class CsvMessageWriter$/;" c
|
||||
CsvMessageWriter DiscordChatExporter.Core/Exporting/CsvMessageWriter.cs /^internal partial class CsvMessageWriter(Stream stream, ExportContext context)$/;" m
|
||||
CultureInfo DiscordChatExporter.Core/Exporting/ExportRequest.cs /^ public CultureInfo? CultureInfo { get; }$/;" p class:ExportRequest
|
||||
CustomEmojiNodeMatcher DiscordChatExporter.Core/Markdown/Parsing/MarkdownParser.cs /^ private static readonly IMatcher<MarkdownContext, MarkdownNode> CustomEmojiNodeMatcher =$/;" f class:MarkdownParser file:
|
||||
Dark DiscordChatExporter.Gui/Framework/ThemeVariant.cs /^ Dark,$/;" e enum:ThemeVariant file:
|
||||
DashboardView DiscordChatExporter.Gui/Views/Components/DashboardView.axaml.cs /^ public DashboardView() => InitializeComponent();$/;" m class:DashboardView
|
||||
DashboardView DiscordChatExporter.Gui/Views/Components/DashboardView.axaml.cs /^public partial class DashboardView : UserControl<DashboardViewModel>$/;" c
|
||||
DashboardViewModel DiscordChatExporter.Gui/ViewModels/Components/DashboardViewModel.cs /^ public DashboardViewModel($/;" m class:DashboardViewModel
|
||||
DashboardViewModel DiscordChatExporter.Gui/ViewModels/Components/DashboardViewModel.cs /^public partial class DashboardViewModel : ViewModelBase$/;" c
|
||||
DataContext DiscordChatExporter.Gui/Framework/UserControl.cs /^ public new TDataContext DataContext$/;" p class:UserControl
|
||||
DataContext DiscordChatExporter.Gui/Framework/Window.cs /^ public new TDataContext DataContext$/;" p class:Window
|
||||
DataDump DiscordChatExporter.Core/Discord/Dump/DataDump.cs /^public partial class DataDump$/;" c
|
||||
DataDump DiscordChatExporter.Core/Discord/Dump/DataDump.cs /^public partial class DataDump(IReadOnlyList<DataDumpChannel> channels)$/;" m
|
||||
DataDumpChannel DiscordChatExporter.Core/Discord/Dump/DataDumpChannel.cs /^public record DataDumpChannel(Snowflake Id, string Name);$/;" m
|
||||
DataPackageFilePath DiscordChatExporter.Cli/Commands/ExportAllCommand.cs /^ public string? DataPackageFilePath { get; init; }$/;" p class:ExportAllCommand
|
||||
Date ranges .docs/Using-the-CLI.md /^#### Date ranges$/;" t section:Using the CLI""Export a specific channel
|
||||
DateFormat DiscordChatExporter.Cli/Commands/Base/ExportCommandBase.cs /^ public string DateFormat { get; init; } = "MM\/dd\/yyyy h:mm tt";$/;" p class:ExportCommandBase
|
||||
DateRangeSpecs DiscordChatExporter.Cli.Tests/Specs/DateRangeSpecs.cs /^public class DateRangeSpecs$/;" c
|
||||
DateRangeTestCases DiscordChatExporter.Cli.Tests/Infra/ChannelIds.cs /^ public static Snowflake DateRangeTestCases { get; } = Snowflake.Parse("866674248747319326");$/;" p class:ChannelIds
|
||||
Default DiscordChatExporter.Core/Discord/Data/MessageKind.cs /^ Default = 0,$/;" e enum:MessageKind file:
|
||||
DefaultRegexOptions DiscordChatExporter.Core/Markdown/Parsing/MarkdownParser.cs /^ private const RegexOptions DefaultRegexOptions =$/;" f class:MarkdownParser file:
|
||||
DialogManager DiscordChatExporter.Gui/Framework/DialogManager.cs /^public class DialogManager : IDisposable$/;" c
|
||||
DialogViewModelBase DiscordChatExporter.Gui/Framework/DialogVIewModelBase.cs /^public abstract partial class DialogViewModelBase<T> : ViewModelBase$/;" c
|
||||
DirPath DiscordChatExporter.Cli.Tests/Infra/ExportWrapper.cs /^ private static readonly string DirPath = Path.Combine($/;" f class:ExportWrapper file:
|
||||
DirectGroupTextChat DiscordChatExporter.Core/Discord/Data/ChannelKind.cs /^ DirectGroupTextChat = 3,$/;" e enum:ChannelKind file:
|
||||
DirectTextChat DiscordChatExporter.Core/Discord/Data/ChannelKind.cs /^ DirectTextChat = 1,$/;" e enum:ChannelKind file:
|
||||
Discord DiscordChatExporter.Cli/Commands/Base/DiscordCommandBase.cs /^ protected DiscordClient Discord => _discordClient ??= new DiscordClient(Token);$/;" f class:DiscordCommandBase
|
||||
DiscordChatExporter Readme.md /^# DiscordChatExporter$/;" c
|
||||
DiscordChatExporter Tests DiscordChatExporter.Cli.Tests/Readme.md /^# DiscordChatExporter Tests$/;" c
|
||||
DiscordChatExporterException DiscordChatExporter.Core/Exceptions/DiscordChatExporterException.cs /^public class DiscordChatExporterException($/;" m
|
||||
DiscordClient DiscordChatExporter.Core/Discord/DiscordClient.cs /^public class DiscordClient(string token)$/;" m
|
||||
DiscordCommandBase DiscordChatExporter.Cli/Commands/Base/DiscordCommandBase.cs /^public abstract class DiscordCommandBase : ICommand$/;" c
|
||||
DiscordToken DiscordChatExporter.Cli.Tests/Infra/Secrets.cs /^ public static string DiscordToken =>$/;" f class:Secrets
|
||||
Disposable DiscordChatExporter.Gui/Utils/Disposable.cs /^internal class Disposable(Action dispose) : IDisposable$/;" m
|
||||
DisposableCollector DiscordChatExporter.Gui/Utils/DisposableCollector.cs /^internal class DisposableCollector : IDisposable$/;" c
|
||||
DisposableExtensions DiscordChatExporter.Gui/Utils/Extensions/DisposableExtensions.cs /^internal static class DisposableExtensions$/;" c
|
||||
Dispose DiscordChatExporter.Gui/App.axaml.cs /^ public void Dispose()$/;" m class:App
|
||||
Dispose DiscordChatExporter.Gui/Framework/DialogManager.cs /^ public void Dispose() => _dialogLock.Dispose();$/;" m class:DialogManager
|
||||
Dispose DiscordChatExporter.Gui/Framework/ViewModelBase.cs /^ protected virtual void Dispose(bool disposing) { }$/;" m class:ViewModelBase
|
||||
Dispose DiscordChatExporter.Gui/Framework/ViewModelBase.cs /^ public void Dispose()$/;" m class:ViewModelBase
|
||||
Dispose DiscordChatExporter.Gui/Utils/DisposableCollector.cs /^ public void Dispose()$/;" m class:DisposableCollector
|
||||
Dispose DiscordChatExporter.Gui/ViewModels/Components/DashboardViewModel.cs /^ protected override void Dispose(bool disposing)$/;" m class:DashboardViewModel
|
||||
Dispose DiscordChatExporter.Gui/ViewModels/Dialogs/SettingsViewModel.cs /^ protected override void Dispose(bool disposing)$/;" m class:SettingsViewModel
|
||||
DisposeAll DiscordChatExporter.Gui/Utils/Extensions/DisposableExtensions.cs /^ public static void DisposeAll(this IEnumerable<IDisposable> disposables)$/;" m class:DisposableExtensions
|
||||
Docker DiscordChatExporter.Core/Utils/Docker.cs /^public static class Docker$/;" c
|
||||
Docker usage instructions .docs/Docker.md /^# Docker usage instructions$/;" c
|
||||
Download Readme.md /^## Download$/;" s chapter:DiscordChatExporter
|
||||
Downloading assets .docs/Using-the-CLI.md /^#### Downloading assets$/;" t section:Using the CLI""Export a specific channel
|
||||
Embed DiscordChatExporter.Core/Discord/Data/Embeds/Embed.cs /^public partial record Embed$/;" p
|
||||
Embed DiscordChatExporter.Core/Discord/Data/Embeds/Embed.cs /^public partial record Embed($/;" m
|
||||
Embed DiscordChatExporter.Core/Exporting/Filtering/MessageContentMatchKind.cs /^ Embed,$/;" e enum:MessageContentMatchKind file:
|
||||
EmbedAuthor DiscordChatExporter.Core/Discord/Data/Embeds/EmbedAuthor.cs /^public record EmbedAuthor(string? Name, string? Url, string? IconUrl, string? IconProxyUrl)$/;" m
|
||||
EmbedField DiscordChatExporter.Core/Discord/Data/Embeds/EmbedField.cs /^public record EmbedField(string Name, string Value, bool IsInline)$/;" m
|
||||
EmbedFooter DiscordChatExporter.Core/Discord/Data/Embeds/EmbedFooter.cs /^public record EmbedFooter(string Text, string? IconUrl, string? IconProxyUrl)$/;" m
|
||||
EmbedImage DiscordChatExporter.Core/Discord/Data/Embeds/EmbedImage.cs /^public record EmbedImage(string? Url, string? ProxyUrl, int? Width, int? Height)$/;" m
|
||||
EmbedKind DiscordChatExporter.Core/Discord/Data/Embeds/EmbedKind.cs /^public enum EmbedKind$/;" g
|
||||
EmbedTestCases DiscordChatExporter.Cli.Tests/Infra/ChannelIds.cs /^ public static Snowflake EmbedTestCases { get; } = Snowflake.Parse("866472452459462687");$/;" p class:ChannelIds
|
||||
EmbedVideo DiscordChatExporter.Core/Discord/Data/Embeds/EmbedVideo.cs /^public record EmbedVideo(string? Url, string? ProxyUrl, int? Width, int? Height)$/;" m
|
||||
Embedded DiscordChatExporter.Core/Discord/Data/ApplicationFlags.cs /^ Embedded = 131072,$/;" e enum:ApplicationFlags file:
|
||||
Emoji DiscordChatExporter.Core/Discord/Data/Emoji.cs /^public partial record Emoji$/;" p
|
||||
EmojiIndex DiscordChatExporter.Core/Discord/Data/EmojiIndex.cs /^internal static class EmojiIndex$/;" c
|
||||
EmojiTestCases DiscordChatExporter.Cli.Tests/Infra/ChannelIds.cs /^ public static Snowflake EmojiTestCases { get; } = Snowflake.Parse("866768438290415636");$/;" p class:ChannelIds
|
||||
Enum DiscordChatExporter.Core/Utils/Extensions/StringExtensions.cs /^ where T : struct, Enum => Enum.TryParse<T>(str, ignoreCase, out var result) ? result : n/;" f class:StringExtensions file:
|
||||
Environment variables .docs/Docker.md /^## Environment variables$/;" s chapter:Docker usage instructions
|
||||
Ephemeral DiscordChatExporter.Core/Discord/Data/MessageFlags.cs /^ Ephemeral = 64,$/;" e enum:MessageFlags file:
|
||||
Errors .docs/Troubleshooting.md /^## Errors$/;" s chapter:Troubleshooting
|
||||
EscapeFileName DiscordChatExporter.Core/Utils/PathEx.cs /^ public static string EscapeFileName(string path)$/;" m class:PathEx
|
||||
EscapedCharacter DiscordChatExporter.Core/Exporting/Filtering/Parsing/FilterGrammar.cs /^ private static readonly TextParser<char> EscapedCharacter = Character$/;" f class:FilterGrammar file:
|
||||
EscapedCharacterTextNodeMatcher DiscordChatExporter.Core/Markdown/Parsing/MarkdownParser.cs /^ > EscapedCharacterTextNodeMatcher = new RegexMatcher<MarkdownContext, MarkdownNode>($/;" f class:MarkdownParser file:
|
||||
EscapedSymbolTextNodeMatcher DiscordChatExporter.Core/Markdown/Parsing/MarkdownParser.cs /^ private static readonly IMatcher<MarkdownContext, MarkdownNode> EscapedSymbolTextNodeMatcher/;" f class:MarkdownParser file:
|
||||
Everyone DiscordChatExporter.Core/Markdown/MentionKind.cs /^ Everyone,$/;" e enum:MentionKind file:
|
||||
EveryoneMentionNodeMatcher DiscordChatExporter.Core/Markdown/Parsing/MarkdownParser.cs /^ private static readonly IMatcher<MarkdownContext, MarkdownNode> EveryoneMentionNodeMatcher =$/;" f class:MarkdownParser file:
|
||||
Examples .docs/Message-filters.md /^## Examples$/;" s chapter:Message filters
|
||||
ExceptionExtensions DiscordChatExporter.Core/Utils/Extensions/ExceptionExtensions.cs /^public static class ExceptionExtensions$/;" c
|
||||
Excluding DMs .docs/Using-the-CLI.md /^#### Excluding DMs$/;" t subsection:Using the CLI""Export a specific channel""Export all channels
|
||||
ExecuteAsync DiscordChatExporter.Cli/Commands/Base/DiscordCommandBase.cs /^ public virtual ValueTask ExecuteAsync(IConsole console)$/;" m class:DiscordCommandBase
|
||||
ExecuteAsync DiscordChatExporter.Cli/Commands/Base/ExportCommandBase.cs /^ public override async ValueTask ExecuteAsync(IConsole console)$/;" m class:ExportCommandBase
|
||||
ExecuteAsync DiscordChatExporter.Cli/Commands/ExportAllCommand.cs /^ public override async ValueTask ExecuteAsync(IConsole console)$/;" m class:ExportAllCommand
|
||||
ExecuteAsync DiscordChatExporter.Cli/Commands/ExportChannelsCommand.cs /^ public override async ValueTask ExecuteAsync(IConsole console)$/;" m class:ExportChannelsCommand
|
||||
ExecuteAsync DiscordChatExporter.Cli/Commands/ExportDirectMessagesCommand.cs /^ public override async ValueTask ExecuteAsync(IConsole console)$/;" m class:ExportDirectMessagesCommand
|
||||
ExecuteAsync DiscordChatExporter.Cli/Commands/ExportGuildCommand.cs /^ public override async ValueTask ExecuteAsync(IConsole console)$/;" m class:ExportGuildCommand
|
||||
ExecuteAsync DiscordChatExporter.Cli/Commands/GetChannelsCommand.cs /^ public override async ValueTask ExecuteAsync(IConsole console)$/;" m class:GetChannelsCommand
|
||||
ExecuteAsync DiscordChatExporter.Cli/Commands/GetDirectChannelsCommand.cs /^ public override async ValueTask ExecuteAsync(IConsole console)$/;" m class:GetDirectChannelsCommand
|
||||
ExecuteAsync DiscordChatExporter.Cli/Commands/GetGuildsCommand.cs /^ public override async ValueTask ExecuteAsync(IConsole console)$/;" m class:GetGuildsCommand
|
||||
ExecuteAsync DiscordChatExporter.Cli/Commands/GuideCommand.cs /^ public ValueTask ExecuteAsync(IConsole console)$/;" m class:GuideCommand
|
||||
Export a specific channel .docs/Using-the-CLI.md /^## Export a specific channel$/;" s chapter:Using the CLI
|
||||
Export all channels .docs/Using-the-CLI.md /^### Export all channels$/;" S section:Using the CLI""Export a specific channel
|
||||
Export at Startup .docs/Scheduling-Windows.md /^## Export at Startup$/;" s chapter:Scheduling exports on Windows
|
||||
Export at a specific time and date .docs/Scheduling-MacOS.md /^### Export at a specific time and date$/;" S section:Scheduling exports on macOS""Creating the .plist file
|
||||
Export channels from a specific server .docs/Using-the-CLI.md /^### Export channels from a specific server$/;" S section:Using the CLI""Export a specific channel
|
||||
Export every _n_ seconds .docs/Scheduling-MacOS.md /^### Export every _n_ seconds$/;" S section:Scheduling exports on macOS""Creating the .plist file
|
||||
ExportAllCommand DiscordChatExporter.Cli/Commands/ExportAllCommand.cs /^public class ExportAllCommand : ExportCommandBase$/;" c
|
||||
ExportAssetDownloader DiscordChatExporter.Core/Exporting/ExportAssetDownloader.cs /^internal partial class ExportAssetDownloader$/;" c
|
||||
ExportAssetDownloader DiscordChatExporter.Core/Exporting/ExportAssetDownloader.cs /^internal partial class ExportAssetDownloader(string workingDirPath, bool reuse)$/;" m
|
||||
ExportAsync DiscordChatExporter.Cli.Tests/Infra/ExportWrapper.cs /^ private static async ValueTask<string> ExportAsync(Snowflake channelId, ExportFormat format)$/;" m class:ExportWrapper file:
|
||||
ExportAsync DiscordChatExporter.Cli/Commands/Base/ExportCommandBase.cs /^ protected async ValueTask ExportAsync(IConsole console, IReadOnlyList<Channel> channels)$/;" m class:ExportCommandBase
|
||||
ExportAsync DiscordChatExporter.Cli/Commands/Base/ExportCommandBase.cs /^ protected async ValueTask ExportAsync(IConsole console, IReadOnlyList<Snowflake> channelIds)$/;" m class:ExportCommandBase
|
||||
ExportAsync DiscordChatExporter.Gui/ViewModels/Components/DashboardViewModel.cs /^ private async Task ExportAsync()$/;" m class:DashboardViewModel file:
|
||||
ExportChannelsCommand DiscordChatExporter.Cli/Commands/ExportChannelsCommand.cs /^public class ExportChannelsCommand : ExportCommandBase$/;" c
|
||||
ExportCommandBase DiscordChatExporter.Cli/Commands/Base/ExportCommandBase.cs /^public abstract class ExportCommandBase : DiscordCommandBase$/;" c
|
||||
ExportContext DiscordChatExporter.Core/Exporting/ExportContext.cs /^internal class ExportContext(DiscordClient discord, ExportRequest request)$/;" m
|
||||
ExportDirectMessagesCommand DiscordChatExporter.Cli/Commands/ExportDirectMessagesCommand.cs /^public class ExportDirectMessagesCommand : ExportCommandBase$/;" c
|
||||
ExportFormat DiscordChatExporter.Cli/Commands/Base/ExportCommandBase.cs /^ public ExportFormat ExportFormat { get; init; } = ExportFormat.HtmlDark;$/;" p class:ExportCommandBase
|
||||
ExportFormat DiscordChatExporter.Core/Exporting/ExportFormat.cs /^public enum ExportFormat$/;" g
|
||||
ExportFormatExtensions DiscordChatExporter.Core/Exporting/ExportFormat.cs /^public static class ExportFormatExtensions$/;" c
|
||||
ExportFormatToStringConverter DiscordChatExporter.Gui/Converters/ExportFormatToStringConverter.cs /^public class ExportFormatToStringConverter : IValueConverter$/;" c
|
||||
ExportGuildCommand DiscordChatExporter.Cli/Commands/ExportGuildCommand.cs /^public class ExportGuildCommand : ExportCommandBase$/;" c
|
||||
ExportRequest DiscordChatExporter.Core/Exporting/ExportRequest.cs /^ public ExportRequest($/;" m class:ExportRequest
|
||||
ExportRequest DiscordChatExporter.Core/Exporting/ExportRequest.cs /^public partial class ExportRequest$/;" c
|
||||
ExportSetupView DiscordChatExporter.Gui/Views/Dialogs/ExportSetupView.axaml.cs /^ public ExportSetupView() => InitializeComponent();$/;" m class:ExportSetupView
|
||||
ExportSetupView DiscordChatExporter.Gui/Views/Dialogs/ExportSetupView.axaml.cs /^public partial class ExportSetupView : UserControl<ExportSetupViewModel>$/;" c
|
||||
ExportSetupViewModel DiscordChatExporter.Gui/ViewModels/Dialogs/ExportSetupViewModel.cs /^public partial class ExportSetupViewModel($/;" m
|
||||
ExportWrapper DiscordChatExporter.Cli.Tests/Infra/ExportWrapper.cs /^ static ExportWrapper()$/;" m class:ExportWrapper file:
|
||||
ExportWrapper DiscordChatExporter.Cli.Tests/Infra/ExportWrapper.cs /^public static class ExportWrapper$/;" c
|
||||
Exporter DiscordChatExporter.Cli/Commands/Base/ExportCommandBase.cs /^ protected ChannelExporter Exporter => _channelExporter ??= new ChannelExporter(Discord);$/;" f class:ExportCommandBase
|
||||
Exporting on System Boot/User Login .docs/Scheduling-MacOS.md /^### Exporting on System Boot\/User Login$/;" S section:Scheduling exports on macOS""Creating the .plist file
|
||||
Extra launchctl commands .docs/Scheduling-MacOS.md /^### Extra launchctl commands$/;" S section:Scheduling exports on macOS""Loading the .plist into launchctl
|
||||
ExtractEmojis DiscordChatExporter.Core/Markdown/Parsing/MarkdownParser.cs /^ public static IReadOnlyList<EmojiNode> ExtractEmojis(string markdown) =>$/;" m class:MarkdownParser
|
||||
ExtractLinks DiscordChatExporter.Core/Markdown/Parsing/MarkdownParser.cs /^ public static IReadOnlyList<LinkNode> ExtractLinks(string markdown) =>$/;" m class:MarkdownParser
|
||||
FAQ & Troubleshooting .docs/Readme.md /^## FAQ & Troubleshooting$/;" s chapter:Home
|
||||
Features Readme.md /^## Features$/;" s chapter:DiscordChatExporter
|
||||
File DiscordChatExporter.Core/Exporting/Filtering/MessageContentMatchKind.cs /^ File,$/;" e enum:MessageContentMatchKind file:
|
||||
File formats .docs/Getting-started.md /^## File formats$/;" s chapter:Getting started
|
||||
FileSize DiscordChatExporter.Core/Discord/Data/Common/FileSize.cs /^public partial record struct FileSize$/;" s
|
||||
FileSize DiscordChatExporter.Core/Discord/Data/Common/FileSize.cs /^public readonly partial record struct FileSize(long TotalBytes)$/;" m
|
||||
FileSizePartitionLimit DiscordChatExporter.Core/Exporting/Partitioning/FileSizePartitionLimit.cs /^internal class FileSizePartitionLimit(long limit) : PartitionLimit$/;" m
|
||||
Filter DiscordChatExporter.Core/Exporting/Filtering/Parsing/FilterGrammar.cs /^ public static readonly TextParser<MessageFilter> Filter = ChainedFilter.Token().AtEnd();$/;" f class:FilterGrammar
|
||||
FilterGrammar DiscordChatExporter.Core/Exporting/Filtering/Parsing/FilterGrammar.cs /^internal static class FilterGrammar$/;" c
|
||||
FilterSpecs DiscordChatExporter.Cli.Tests/Specs/FilterSpecs.cs /^public class FilterSpecs$/;" c
|
||||
FilterTestCases DiscordChatExporter.Cli.Tests/Infra/ChannelIds.cs /^ public static Snowflake FilterTestCases { get; } = Snowflake.Parse("866744075033641020");$/;" p class:ChannelIds
|
||||
Filtering messages .docs/Using-the-CLI.md /^#### Filtering messages$/;" t section:Using the CLI""Export a specific channel
|
||||
First steps .docs/Troubleshooting.md /^## First steps$/;" s chapter:Troubleshooting
|
||||
Format DiscordChatExporter.Core/Exporting/ExportRequest.cs /^ public ExportFormat Format { get; }$/;" p class:ExportRequest
|
||||
FormatAsync DiscordChatExporter.Core/Exporting/HtmlMarkdownVisitor.cs /^ public static async ValueTask<string> FormatAsync($/;" m class:HtmlMarkdownVisitor
|
||||
FormatAsync DiscordChatExporter.Core/Exporting/PlainTextMarkdownVisitor.cs /^ public static async ValueTask<string> FormatAsync($/;" m class:PlainTextMarkdownVisitor
|
||||
FormatPath DiscordChatExporter.Core/Exporting/ExportRequest.cs /^ private static string FormatPath($/;" m class:ExportRequest file:
|
||||
FormattingKind DiscordChatExporter.Core/Markdown/FormattingKind.cs /^internal enum FormattingKind$/;" g
|
||||
FormattingNode DiscordChatExporter.Core/Markdown/FormattingNode.cs /^internal record FormattingNode(FormattingKind Kind, IReadOnlyList<MarkdownNode> Children)$/;" m
|
||||
FromBytes DiscordChatExporter.Core/Discord/Data/Common/FileSize.cs /^ public static FileSize FromBytes(long bytes) => new(bytes);$/;" m struct:FileSize
|
||||
FromFilter DiscordChatExporter.Core/Exporting/Filtering/Parsing/FilterGrammar.cs /^ private static readonly TextParser<MessageFilter> FromFilter = Span.EqualToIgnoreCase("from:/;" f class:FilterGrammar file:
|
||||
FromMessageFilter DiscordChatExporter.Core/Exporting/Filtering/FromMessageFilter.cs /^internal class FromMessageFilter(string value) : MessageFilter$/;" m
|
||||
GUI or CLI? .docs/Getting-started.md /^## GUI or CLI?$/;" s chapter:Getting started
|
||||
GatewayGuildMembers DiscordChatExporter.Core/Discord/Data/ApplicationFlags.cs /^ GatewayGuildMembers = 16384,$/;" e enum:ApplicationFlags file:
|
||||
GatewayGuildMembersLimited DiscordChatExporter.Core/Discord/Data/ApplicationFlags.cs /^ GatewayGuildMembersLimited = 32768,$/;" e enum:ApplicationFlags file:
|
||||
GatewayMessageContent DiscordChatExporter.Core/Discord/Data/ApplicationFlags.cs /^ GatewayMessageContent = 262144,$/;" e enum:ApplicationFlags file:
|
||||
GatewayMessageContentLimited DiscordChatExporter.Core/Discord/Data/ApplicationFlags.cs /^ GatewayMessageContentLimited = 524288,$/;" e enum:ApplicationFlags file:
|
||||
GatewayPresence DiscordChatExporter.Core/Discord/Data/ApplicationFlags.cs /^ GatewayPresence = 4096,$/;" e enum:ApplicationFlags file:
|
||||
GatewayPresenceLimited DiscordChatExporter.Core/Discord/Data/ApplicationFlags.cs /^ GatewayPresenceLimited = 8192,$/;" e enum:ApplicationFlags file:
|
||||
General questions .docs/Troubleshooting.md /^## General questions$/;" s chapter:Troubleshooting
|
||||
Generating the filename and output directory dynamically .docs/Using-the-CLI.md /^#### Generating the filename and output directory dynamically$/;" t section:Using the CLI""Export a specific channel
|
||||
GenericExtensions DiscordChatExporter.Core/Utils/Extensions/GenericExtensions.cs /^public static class GenericExtensions$/;" c
|
||||
GetAwaiter DiscordChatExporter.Core/Utils/Extensions/AsyncCollectionExtensions.cs /^ public static ValueTaskAwaiter<IReadOnlyList<T>> GetAwaiter<T>($/;" m class:AsyncCollectionExtensions
|
||||
GetChannelIconUrl DiscordChatExporter.Core/Discord/Data/Common/ImageCdn.cs /^ public static string GetChannelIconUrl(Snowflake channelId, string iconHash, int size = 512)/;" m class:ImageCdn
|
||||
GetChannelsCommand DiscordChatExporter.Cli/Commands/GetChannelsCommand.cs /^public class GetChannelsCommand : DiscordCommandBase$/;" c
|
||||
GetCustomEmojiUrl DiscordChatExporter.Core/Discord/Data/Common/ImageCdn.cs /^ public static string GetCustomEmojiUrl(Snowflake emojiId, bool isAnimated = false) =>$/;" m class:ImageCdn
|
||||
GetDefaultOutputFileName DiscordChatExporter.Core/Exporting/ExportRequest.cs /^ public static string GetDefaultOutputFileName($/;" m class:ExportRequest
|
||||
GetDirectChannelsCommand DiscordChatExporter.Cli/Commands/GetDirectChannelsCommand.cs /^public class GetDirectChannelsCommand : DiscordCommandBase$/;" c
|
||||
GetDisplayName DiscordChatExporter.Core/Exporting/ExportFormat.cs /^ public static string GetDisplayName(this ExportFormat format) =>$/;" m class:ExportFormatExtensions
|
||||
GetFallbackContent DiscordChatExporter.Core/Exporting/PlainTextMessageExtensions.cs /^ public static string GetFallbackContent(this Message message) =>$/;" m class:PlainTextMessageExtensions
|
||||
GetFallbackUserAvatarUrl DiscordChatExporter.Core/Discord/Data/Common/ImageCdn.cs /^ public static string GetFallbackUserAvatarUrl(int index = 0) =>$/;" m class:ImageCdn
|
||||
GetFileExtension DiscordChatExporter.Core/Exporting/ExportFormat.cs /^ public static string GetFileExtension(this ExportFormat format) =>$/;" m class:ExportFormatExtensions
|
||||
GetFileNameFromUrl DiscordChatExporter.Core/Exporting/ExportAssetDownloader.cs /^ private static string GetFileNameFromUrl(string url)$/;" m class:ExportAssetDownloader file:
|
||||
GetGuildIconUrl DiscordChatExporter.Core/Discord/Data/Common/ImageCdn.cs /^ public static string GetGuildIconUrl(Snowflake guildId, string iconHash, int size = 512) =>$/;" m class:ImageCdn
|
||||
GetGuildsCommand DiscordChatExporter.Cli/Commands/GetGuildsCommand.cs /^public class GetGuildsCommand : DiscordCommandBase$/;" c
|
||||
GetMemberAvatarUrl DiscordChatExporter.Core/Discord/Data/Common/ImageCdn.cs /^ public static string GetMemberAvatarUrl($/;" m class:ImageCdn
|
||||
GetMessageAsHtmlAsync DiscordChatExporter.Cli.Tests/Infra/ExportWrapper.cs /^ public static async ValueTask<IElement> GetMessageAsHtmlAsync($/;" m class:ExportWrapper
|
||||
GetMessageAsJsonAsync DiscordChatExporter.Cli.Tests/Infra/ExportWrapper.cs /^ public static async ValueTask<JsonElement> GetMessageAsJsonAsync($/;" m class:ExportWrapper
|
||||
GetOutputBaseFilePath DiscordChatExporter.Core/Exporting/ExportRequest.cs /^ private static string GetOutputBaseFilePath($/;" m class:ExportRequest file:
|
||||
GetPartitionFilePath DiscordChatExporter.Core/Exporting/MessageExporter.cs /^ private static string GetPartitionFilePath(string baseFilePath, int partitionIndex)$/;" m class:MessageExporter file:
|
||||
GetSelfAndChildren DiscordChatExporter.Core/Utils/Extensions/ExceptionExtensions.cs /^ public static IReadOnlyList<Exception> GetSelfAndChildren(this Exception exception)$/;" m class:ExceptionExtensions
|
||||
GetStandardEmojiUrl DiscordChatExporter.Core/Discord/Data/Common/ImageCdn.cs /^ public static string GetStandardEmojiUrl(string emojiName)$/;" m class:ImageCdn
|
||||
GetStickerUrl DiscordChatExporter.Core/Discord/Data/Common/ImageCdn.cs /^ public static string GetStickerUrl(Snowflake stickerId, string format = "png") =>$/;" m class:ImageCdn
|
||||
GetUrlHash DiscordChatExporter.Core/Exporting/ExportAssetDownloader.cs /^ private static string GetUrlHash(string url)$/;" m class:ExportAssetDownloader file:
|
||||
GetUserAvatarUrl DiscordChatExporter.Core/Discord/Data/Common/ImageCdn.cs /^ public static string GetUserAvatarUrl(Snowflake userId, string avatarHash, int size = 512) =/;" m class:ImageCdn
|
||||
Getting started .docs/Getting-started.md /^# Getting started$/;" c
|
||||
Gif DiscordChatExporter.Core/Discord/Data/StickerFormat.cs /^ Gif = 4,$/;" e enum:StickerFormat file:
|
||||
Gifv DiscordChatExporter.Core/Discord/Data/Embeds/EmbedKind.cs /^ Gifv,$/;" e enum:EmbedKind file:
|
||||
GroupedFilter DiscordChatExporter.Core/Exporting/Filtering/Parsing/FilterGrammar.cs /^ private static readonly TextParser<MessageFilter> GroupedFilter =$/;" f class:FilterGrammar file:
|
||||
GroupingTestCases DiscordChatExporter.Cli.Tests/Infra/ChannelIds.cs /^ public static Snowflake GroupingTestCases { get; } = Snowflake.Parse("992092091545034842");$/;" p class:ChannelIds
|
||||
Guide .docs/Using-the-GUI.md /^## Guide$/;" s chapter:Using the GUI
|
||||
GuideCommand DiscordChatExporter.Cli/Commands/GuideCommand.cs /^public class GuideCommand : ICommand$/;" c
|
||||
Guides .docs/Readme.md /^## Guides$/;" s chapter:Home
|
||||
Guild DiscordChatExporter.Core/Discord/Data/Guild.cs /^public partial record Guild$/;" p
|
||||
Guild DiscordChatExporter.Core/Discord/Data/Guild.cs /^public partial record Guild(Snowflake Id, string Name, string IconUrl) : IHasId$/;" m
|
||||
Guild DiscordChatExporter.Core/Exporting/ExportRequest.cs /^ public Guild Guild { get; }$/;" p class:ExportRequest
|
||||
GuildCategory DiscordChatExporter.Core/Discord/Data/ChannelKind.cs /^ GuildCategory = 4,$/;" e enum:ChannelKind file:
|
||||
GuildDirectory DiscordChatExporter.Core/Discord/Data/ChannelKind.cs /^ GuildDirectory = 14,$/;" e enum:ChannelKind file:
|
||||
GuildForum DiscordChatExporter.Core/Discord/Data/ChannelKind.cs /^ GuildForum = 15,$/;" e enum:ChannelKind file:
|
||||
GuildId DiscordChatExporter.Cli/Commands/ExportGuildCommand.cs /^ public required Snowflake GuildId { get; init; }$/;" p class:ExportGuildCommand
|
||||
GuildId DiscordChatExporter.Cli/Commands/GetChannelsCommand.cs /^ public required Snowflake GuildId { get; init; }$/;" p class:GetChannelsCommand
|
||||
GuildMemberJoin DiscordChatExporter.Core/Discord/Data/MessageKind.cs /^ GuildMemberJoin = 7,$/;" e enum:MessageKind file:
|
||||
GuildNews DiscordChatExporter.Core/Discord/Data/ChannelKind.cs /^ GuildNews = 5,$/;" e enum:ChannelKind file:
|
||||
GuildNewsThread DiscordChatExporter.Core/Discord/Data/ChannelKind.cs /^ GuildNewsThread = 10,$/;" e enum:ChannelKind file:
|
||||
GuildPrivateThread DiscordChatExporter.Core/Discord/Data/ChannelKind.cs /^ GuildPrivateThread = 12,$/;" e enum:ChannelKind file:
|
||||
GuildPublicThread DiscordChatExporter.Core/Discord/Data/ChannelKind.cs /^ GuildPublicThread = 11,$/;" e enum:ChannelKind file:
|
||||
GuildStageVoice DiscordChatExporter.Core/Discord/Data/ChannelKind.cs /^ GuildStageVoice = 13,$/;" e enum:ChannelKind file:
|
||||
GuildTextChat DiscordChatExporter.Core/Discord/Data/ChannelKind.cs /^ GuildTextChat = 0,$/;" e enum:ChannelKind file:
|
||||
GuildVoiceChat DiscordChatExporter.Core/Discord/Data/ChannelKind.cs /^ GuildVoiceChat = 2,$/;" e enum:ChannelKind file:
|
||||
HTML .docs/Getting-started.md /^### HTML$/;" S section:Getting started""File formats
|
||||
HasFilter DiscordChatExporter.Core/Exporting/Filtering/Parsing/FilterGrammar.cs /^ private static readonly TextParser<MessageFilter> HasFilter = Span.EqualToIgnoreCase("has:")$/;" f class:FilterGrammar file:
|
||||
HasMessageFilter DiscordChatExporter.Core/Exporting/Filtering/HasMessageFilter.cs /^internal class HasMessageFilter(MessageContentMatchKind kind) : MessageFilter$/;" m
|
||||
HasThread DiscordChatExporter.Core/Discord/Data/MessageFlags.cs /^ HasThread = 32,$/;" e enum:MessageFlags file:
|
||||
HeadingNode DiscordChatExporter.Core/Markdown/HeadingNode.cs /^internal record HeadingNode(int Level, IReadOnlyList<MarkdownNode> Children)$/;" m
|
||||
HeadingNodeMatcher DiscordChatExporter.Core/Markdown/Parsing/MarkdownParser.cs /^ private static readonly IMatcher<MarkdownContext, MarkdownNode> HeadingNodeMatcher =$/;" f class:MarkdownParser file:
|
||||
Here DiscordChatExporter.Core/Markdown/MentionKind.cs /^ Here,$/;" e enum:MentionKind file:
|
||||
HereMentionNodeMatcher DiscordChatExporter.Core/Markdown/Parsing/MarkdownParser.cs /^ private static readonly IMatcher<MarkdownContext, MarkdownNode> HereMentionNodeMatcher =$/;" f class:MarkdownParser file:
|
||||
HiddenLinkNodeMatcher DiscordChatExporter.Core/Markdown/Parsing/MarkdownParser.cs /^ private static readonly IMatcher<MarkdownContext, MarkdownNode> HiddenLinkNodeMatcher =$/;" f class:MarkdownParser file:
|
||||
Home .docs/Readme.md /^# Home$/;" c
|
||||
How can I find my token? .docs/Troubleshooting.md /^### How can I find my token?$/;" S section:Troubleshooting""First steps
|
||||
How can I reset my token? .docs/Troubleshooting.md /^### How can I reset my token?$/;" S section:Troubleshooting""General questions
|
||||
How can I set DCE to export automatically at certain times? .docs/Troubleshooting.md /^### How can I set DCE to export automatically at certain times?$/;" S section:Troubleshooting""First steps
|
||||
How do I use the CLI? .docs/Troubleshooting.md /^### How do I use the CLI?$/;" S section:Troubleshooting""CLI
|
||||
How to get a Bot Token .docs/Token-and-IDs.md /^## How to get a Bot Token$/;" s chapter:Obtaining Token and Channel IDs
|
||||
How to get a Server ID or a Channel ID .docs/Token-and-IDs.md /^## How to get a Server ID or a Channel ID$/;" s chapter:Obtaining Token and Channel IDs
|
||||
How to get a User Token .docs/Token-and-IDs.md /^## How to get a User Token$/;" s chapter:Obtaining Token and Channel IDs
|
||||
Html DiscordChatExporter.Cli.Tests/Utils/Html.cs /^internal static class Html$/;" c
|
||||
HtmlAttachmentSpecs DiscordChatExporter.Cli.Tests/Specs/HtmlAttachmentSpecs.cs /^public class HtmlAttachmentSpecs$/;" c
|
||||
HtmlContentSpecs DiscordChatExporter.Cli.Tests/Specs/HtmlContentSpecs.cs /^public class HtmlContentSpecs$/;" c
|
||||
HtmlDark DiscordChatExporter.Core/Exporting/ExportFormat.cs /^ HtmlDark,$/;" e enum:ExportFormat file:
|
||||
HtmlEmbedSpecs DiscordChatExporter.Cli.Tests/Specs/HtmlEmbedSpecs.cs /^public class HtmlEmbedSpecs$/;" c
|
||||
HtmlEncode DiscordChatExporter.Core/Exporting/HtmlMarkdownVisitor.cs /^ private static string HtmlEncode(string text) => WebUtility.HtmlEncode(text);$/;" m class:HtmlMarkdownVisitor file:
|
||||
HtmlGroupingSpecs DiscordChatExporter.Cli.Tests/Specs/HtmlGroupingSpecs.cs /^public class HtmlGroupingSpecs$/;" c
|
||||
HtmlLight DiscordChatExporter.Core/Exporting/ExportFormat.cs /^ HtmlLight,$/;" e enum:ExportFormat file:
|
||||
HtmlMarkdownSpecs DiscordChatExporter.Cli.Tests/Specs/HtmlMarkdownSpecs.cs /^public class HtmlMarkdownSpecs$/;" c
|
||||
HtmlMarkdownVisitor DiscordChatExporter.Core/Exporting/HtmlMarkdownVisitor.cs /^internal partial class HtmlMarkdownVisitor$/;" c
|
||||
HtmlMarkdownVisitor DiscordChatExporter.Core/Exporting/HtmlMarkdownVisitor.cs /^internal partial class HtmlMarkdownVisitor($/;" m
|
||||
HtmlMentionSpecs DiscordChatExporter.Cli.Tests/Specs/HtmlMentionSpecs.cs /^public class HtmlMentionSpecs$/;" c
|
||||
HtmlMessageExtensions DiscordChatExporter.Core/Exporting/HtmlMessageExtensions.cs /^internal static class HtmlMessageExtensions$/;" c
|
||||
HtmlMessageWriter DiscordChatExporter.Core/Exporting/HtmlMessageWriter.cs /^internal class HtmlMessageWriter(Stream stream, ExportContext context, string themeName)$/;" m
|
||||
HtmlReplySpecs DiscordChatExporter.Cli.Tests/Specs/HtmlReplySpecs.cs /^public class HtmlReplySpecs$/;" c
|
||||
HtmlStickerSpecs DiscordChatExporter.Cli.Tests/Specs/HtmlStickerSpecs.cs /^public class HtmlStickerSpecs$/;" c
|
||||
Http DiscordChatExporter.Core/Utils/Http.cs /^public static class Http$/;" c
|
||||
HttpExtensions DiscordChatExporter.Core/Utils/Extensions/HttpExtensions.cs /^public static class HttpExtensions$/;" c
|
||||
HyperLink DiscordChatExporter.Gui/Views/Controls/HyperLink.axaml.cs /^ public HyperLink() => InitializeComponent();$/;" m class:HyperLink
|
||||
HyperLink DiscordChatExporter.Gui/Views/Controls/HyperLink.axaml.cs /^public partial class HyperLink : UserControl$/;" c
|
||||
I can't export Direct Messages .docs/Troubleshooting.md /^### I can't export Direct Messages$/;" S section:Troubleshooting""CLI
|
||||
I can't find Docker exported chats .docs/Troubleshooting.md /^### I can't find Docker exported chats$/;" S section:Troubleshooting""CLI
|
||||
I see messages in the export, but they have no content .docs/Troubleshooting.md /^### I see messages in the export, but they have no content$/;" S section:Troubleshooting""First steps
|
||||
IContainerNode DiscordChatExporter.Core/Markdown/IContainerNode.cs /^internal interface IContainerNode$/;" i
|
||||
IHasId DiscordChatExporter.Core/Discord/Data/Common/IHasId.cs /^public interface IHasId$/;" i
|
||||
IMatcher DiscordChatExporter.Core/Markdown/Parsing/IMatcher.cs /^internal interface IMatcher<in TContext, TValue>$/;" i
|
||||
INotifyPropertyChanged DiscordChatExporter.Gui/Utils/Extensions/NotifyPropertyChangedExtensions.cs /^ where TOwner : INotifyPropertyChanged$/;" p class:NotifyPropertyChangedExtensions
|
||||
I_can_export_a_channel_and_download_all_referenced_assets DiscordChatExporter.Cli.Tests/Specs/SelfContainedSpecs.cs /^ public async Task I_can_export_a_channel_and_download_all_referenced_assets()$/;" m class:SelfContainedSpecs
|
||||
I_can_export_a_channel_and_the_messages_are_grouped_according_to_their_author_and_timestamps DiscordChatExporter.Cli.Tests/Specs/HtmlGroupingSpecs.cs /^ public async Task I_can_export_a_channel_and_the_messages_are_grouped_according_to_their_aut/;" m class:HtmlGroupingSpecs
|
||||
I_can_export_a_channel_in_the_CSV_format DiscordChatExporter.Cli.Tests/Specs/CsvContentSpecs.cs /^ public async Task I_can_export_a_channel_in_the_CSV_format()$/;" m class:CsvContentSpecs
|
||||
I_can_export_a_channel_in_the_HTML_format DiscordChatExporter.Cli.Tests/Specs/HtmlContentSpecs.cs /^ public async Task I_can_export_a_channel_in_the_HTML_format()$/;" m class:HtmlContentSpecs
|
||||
I_can_export_a_channel_in_the_JSON_format DiscordChatExporter.Cli.Tests/Specs/JsonContentSpecs.cs /^ public async Task I_can_export_a_channel_in_the_JSON_format()$/;" m class:JsonContentSpecs
|
||||
I_can_export_a_channel_in_the_TXT_format DiscordChatExporter.Cli.Tests/Specs/PlainTextContentSpecs.cs /^ public async Task I_can_export_a_channel_in_the_TXT_format()$/;" m class:PlainTextContentSpecs
|
||||
I_can_export_a_channel_that_contains_a_message_cross_posted_from_another_guild DiscordChatExporter.Cli.Tests/Specs/HtmlReplySpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_cross_posted_from_another_g/;" m class:HtmlReplySpecs
|
||||
I_can_export_a_channel_that_contains_a_message_that_replies_to_a_deleted_message DiscordChatExporter.Cli.Tests/Specs/HtmlReplySpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_that_replies_to_a_deleted_m/;" m class:HtmlReplySpecs
|
||||
I_can_export_a_channel_that_contains_a_message_that_replies_to_an_empty_message_with_an_attachment DiscordChatExporter.Cli.Tests/Specs/HtmlReplySpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_that_replies_to_an_empty_me/;" m class:HtmlReplySpecs
|
||||
I_can_export_a_channel_that_contains_a_message_that_replies_to_an_interaction DiscordChatExporter.Cli.Tests/Specs/HtmlReplySpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_that_replies_to_an_interact/;" m class:HtmlReplySpecs
|
||||
I_can_export_a_channel_that_contains_a_message_that_replies_to_another_message DiscordChatExporter.Cli.Tests/Specs/HtmlReplySpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_that_replies_to_another_mes/;" m class:HtmlReplySpecs
|
||||
I_can_export_a_channel_that_contains_a_message_with_a_GIFV_embed DiscordChatExporter.Cli.Tests/Specs/HtmlEmbedSpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_with_a_GIFV_embed()$/;" m class:HtmlEmbedSpecs
|
||||
I_can_export_a_channel_that_contains_a_message_with_a_GIFV_embed_and_the_text_is_hidden_if_it_only_contains_the_video_link DiscordChatExporter.Cli.Tests/Specs/HtmlEmbedSpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_with_a_GIFV_embed_and_the_t/;" m class:HtmlEmbedSpecs
|
||||
I_can_export_a_channel_that_contains_a_message_with_a_Lottie_sticker DiscordChatExporter.Cli.Tests/Specs/HtmlStickerSpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_with_a_Lottie_sticker()$/;" m class:HtmlStickerSpecs
|
||||
I_can_export_a_channel_that_contains_a_message_with_a_Lottie_sticker DiscordChatExporter.Cli.Tests/Specs/JsonStickerSpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_with_a_Lottie_sticker()$/;" m class:JsonStickerSpecs
|
||||
I_can_export_a_channel_that_contains_a_message_with_a_PNG_sticker DiscordChatExporter.Cli.Tests/Specs/HtmlStickerSpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_with_a_PNG_sticker()$/;" m class:HtmlStickerSpecs
|
||||
I_can_export_a_channel_that_contains_a_message_with_a_PNG_sticker DiscordChatExporter.Cli.Tests/Specs/JsonStickerSpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_with_a_PNG_sticker()$/;" m class:JsonStickerSpecs
|
||||
I_can_export_a_channel_that_contains_a_message_with_a_Spotify_track_embed DiscordChatExporter.Cli.Tests/Specs/HtmlEmbedSpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_with_a_Spotify_track_embed(/;" m class:HtmlEmbedSpecs
|
||||
I_can_export_a_channel_that_contains_a_message_with_a_Twitch_clip_embed DiscordChatExporter.Cli.Tests/Specs/HtmlEmbedSpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_with_a_Twitch_clip_embed()$/;" m class:HtmlEmbedSpecs
|
||||
I_can_export_a_channel_that_contains_a_message_with_a_Twitter_post_embed_that_includes_multiple_images DiscordChatExporter.Cli.Tests/Specs/HtmlEmbedSpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_with_a_Twitter_post_embed_t/;" m class:HtmlEmbedSpecs
|
||||
I_can_export_a_channel_that_contains_a_message_with_a_YouTube_video_embed DiscordChatExporter.Cli.Tests/Specs/HtmlEmbedSpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_with_a_YouTube_video_embed(/;" m class:HtmlEmbedSpecs
|
||||
I_can_export_a_channel_that_contains_a_message_with_a_generic_attachment DiscordChatExporter.Cli.Tests/Specs/HtmlAttachmentSpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_with_a_generic_attachment()$/;" m class:HtmlAttachmentSpecs
|
||||
I_can_export_a_channel_that_contains_a_message_with_a_generic_attachment DiscordChatExporter.Cli.Tests/Specs/JsonAttachmentSpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_with_a_generic_attachment()$/;" m class:JsonAttachmentSpecs
|
||||
I_can_export_a_channel_that_contains_a_message_with_a_guild_invite DiscordChatExporter.Cli.Tests/Specs/HtmlEmbedSpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_with_a_guild_invite()$/;" m class:HtmlEmbedSpecs
|
||||
I_can_export_a_channel_that_contains_a_message_with_a_rich_embed DiscordChatExporter.Cli.Tests/Specs/HtmlEmbedSpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_with_a_rich_embed()$/;" m class:HtmlEmbedSpecs
|
||||
I_can_export_a_channel_that_contains_a_message_with_a_rich_embed DiscordChatExporter.Cli.Tests/Specs/JsonEmbedSpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_with_a_rich_embed()$/;" m class:JsonEmbedSpecs
|
||||
I_can_export_a_channel_that_contains_a_message_with_a_role_mention DiscordChatExporter.Cli.Tests/Specs/HtmlMentionSpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_with_a_role_mention()$/;" m class:HtmlMentionSpecs
|
||||
I_can_export_a_channel_that_contains_a_message_with_a_role_mention DiscordChatExporter.Cli.Tests/Specs/JsonMentionSpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_with_a_role_mention()$/;" m class:JsonMentionSpecs
|
||||
I_can_export_a_channel_that_contains_a_message_with_a_text_channel_mention DiscordChatExporter.Cli.Tests/Specs/HtmlMentionSpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_with_a_text_channel_mention/;" m class:HtmlMentionSpecs
|
||||
I_can_export_a_channel_that_contains_a_message_with_a_text_channel_mention DiscordChatExporter.Cli.Tests/Specs/JsonMentionSpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_with_a_text_channel_mention/;" m class:JsonMentionSpecs
|
||||
I_can_export_a_channel_that_contains_a_message_with_a_timestamp_marker DiscordChatExporter.Cli.Tests/Specs/HtmlMarkdownSpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_with_a_timestamp_marker()$/;" m class:HtmlMarkdownSpecs
|
||||
I_can_export_a_channel_that_contains_a_message_with_a_timestamp_marker_in_the_full_format DiscordChatExporter.Cli.Tests/Specs/HtmlMarkdownSpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_with_a_timestamp_marker_in_/;" m class:HtmlMarkdownSpecs
|
||||
I_can_export_a_channel_that_contains_a_message_with_a_timestamp_marker_in_the_full_long_format DiscordChatExporter.Cli.Tests/Specs/HtmlMarkdownSpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_with_a_timestamp_marker_in_/;" m class:HtmlMarkdownSpecs
|
||||
I_can_export_a_channel_that_contains_a_message_with_a_timestamp_marker_in_the_long_date_format DiscordChatExporter.Cli.Tests/Specs/HtmlMarkdownSpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_with_a_timestamp_marker_in_/;" m class:HtmlMarkdownSpecs
|
||||
I_can_export_a_channel_that_contains_a_message_with_a_timestamp_marker_in_the_long_format DiscordChatExporter.Cli.Tests/Specs/HtmlMarkdownSpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_with_a_timestamp_marker_in_/;" m class:HtmlMarkdownSpecs
|
||||
I_can_export_a_channel_that_contains_a_message_with_a_timestamp_marker_in_the_relative_format DiscordChatExporter.Cli.Tests/Specs/HtmlMarkdownSpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_with_a_timestamp_marker_in_/;" m class:HtmlMarkdownSpecs
|
||||
I_can_export_a_channel_that_contains_a_message_with_a_timestamp_marker_in_the_short_date_format DiscordChatExporter.Cli.Tests/Specs/HtmlMarkdownSpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_with_a_timestamp_marker_in_/;" m class:HtmlMarkdownSpecs
|
||||
I_can_export_a_channel_that_contains_a_message_with_a_timestamp_marker_in_the_short_format DiscordChatExporter.Cli.Tests/Specs/HtmlMarkdownSpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_with_a_timestamp_marker_in_/;" m class:HtmlMarkdownSpecs
|
||||
I_can_export_a_channel_that_contains_a_message_with_a_user_mention DiscordChatExporter.Cli.Tests/Specs/HtmlMentionSpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_with_a_user_mention()$/;" m class:HtmlMentionSpecs
|
||||
I_can_export_a_channel_that_contains_a_message_with_a_user_mention DiscordChatExporter.Cli.Tests/Specs/JsonMentionSpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_with_a_user_mention()$/;" m class:JsonMentionSpecs
|
||||
I_can_export_a_channel_that_contains_a_message_with_a_video_attachment DiscordChatExporter.Cli.Tests/Specs/HtmlAttachmentSpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_with_a_video_attachment()$/;" m class:HtmlAttachmentSpecs
|
||||
I_can_export_a_channel_that_contains_a_message_with_a_video_attachment DiscordChatExporter.Cli.Tests/Specs/JsonAttachmentSpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_with_a_video_attachment()$/;" m class:JsonAttachmentSpecs
|
||||
I_can_export_a_channel_that_contains_a_message_with_a_video_embed DiscordChatExporter.Cli.Tests/Specs/HtmlEmbedSpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_with_a_video_embed()$/;" m class:HtmlEmbedSpecs
|
||||
I_can_export_a_channel_that_contains_a_message_with_a_voice_channel_mention DiscordChatExporter.Cli.Tests/Specs/HtmlMentionSpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_with_a_voice_channel_mentio/;" m class:HtmlMentionSpecs
|
||||
I_can_export_a_channel_that_contains_a_message_with_a_voice_channel_mention DiscordChatExporter.Cli.Tests/Specs/JsonMentionSpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_with_a_voice_channel_mentio/;" m class:JsonMentionSpecs
|
||||
I_can_export_a_channel_that_contains_a_message_with_an_audio_attachment DiscordChatExporter.Cli.Tests/Specs/HtmlAttachmentSpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_with_an_audio_attachment()$/;" m class:HtmlAttachmentSpecs
|
||||
I_can_export_a_channel_that_contains_a_message_with_an_audio_attachment DiscordChatExporter.Cli.Tests/Specs/JsonAttachmentSpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_with_an_audio_attachment()$/;" m class:JsonAttachmentSpecs
|
||||
I_can_export_a_channel_that_contains_a_message_with_an_image_attachment DiscordChatExporter.Cli.Tests/Specs/HtmlAttachmentSpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_with_an_image_attachment()$/;" m class:HtmlAttachmentSpecs
|
||||
I_can_export_a_channel_that_contains_a_message_with_an_image_attachment DiscordChatExporter.Cli.Tests/Specs/JsonAttachmentSpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_with_an_image_attachment()$/;" m class:JsonAttachmentSpecs
|
||||
I_can_export_a_channel_that_contains_a_message_with_an_image_embed DiscordChatExporter.Cli.Tests/Specs/HtmlEmbedSpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_with_an_image_embed()$/;" m class:HtmlEmbedSpecs
|
||||
I_can_export_a_channel_that_contains_a_message_with_an_image_embed_and_the_text_is_hidden_if_it_only_contains_the_image_link DiscordChatExporter.Cli.Tests/Specs/HtmlEmbedSpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_with_an_image_embed_and_the/;" m class:HtmlEmbedSpecs
|
||||
I_can_export_a_channel_that_contains_a_message_with_an_invalid_timestamp_marker DiscordChatExporter.Cli.Tests/Specs/HtmlMarkdownSpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_with_an_invalid_timestamp_m/;" m class:HtmlMarkdownSpecs
|
||||
I_can_export_a_channel_that_contains_a_message_with_custom_inline_emoji_and_have_them_listed_separately DiscordChatExporter.Cli.Tests/Specs/JsonEmojiSpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_with_custom_inline_emoji_an/;" m class:JsonEmojiSpecs
|
||||
I_can_export_a_channel_that_contains_a_message_with_inline_emoji_and_have_them_listed_separately DiscordChatExporter.Cli.Tests/Specs/JsonEmojiSpecs.cs /^ public async Task I_can_export_a_channel_that_contains_a_message_with_inline_emoji_and_have_/;" m class:JsonEmojiSpecs
|
||||
I_can_export_a_channel_with_partitioning_based_on_file_size DiscordChatExporter.Cli.Tests/Specs/PartitioningSpecs.cs /^ public async Task I_can_export_a_channel_with_partitioning_based_on_file_size()$/;" m class:PartitioningSpecs
|
||||
I_can_export_a_channel_with_partitioning_based_on_message_count DiscordChatExporter.Cli.Tests/Specs/PartitioningSpecs.cs /^ public async Task I_can_export_a_channel_with_partitioning_based_on_message_count()$/;" m class:PartitioningSpecs
|
||||
I_can_filter_the_export_to_only_include_messages_sent_after_the_specified_date DiscordChatExporter.Cli.Tests/Specs/DateRangeSpecs.cs /^ public async Task I_can_filter_the_export_to_only_include_messages_sent_after_the_specified_/;" m class:DateRangeSpecs
|
||||
I_can_filter_the_export_to_only_include_messages_sent_before_the_specified_date DiscordChatExporter.Cli.Tests/Specs/DateRangeSpecs.cs /^ public async Task I_can_filter_the_export_to_only_include_messages_sent_before_the_specified/;" m class:DateRangeSpecs
|
||||
I_can_filter_the_export_to_only_include_messages_sent_between_the_specified_dates DiscordChatExporter.Cli.Tests/Specs/DateRangeSpecs.cs /^ public async Task I_can_filter_the_export_to_only_include_messages_sent_between_the_specifie/;" m class:DateRangeSpecs
|
||||
I_can_filter_the_export_to_only_include_messages_that_contain_guild_invites DiscordChatExporter.Cli.Tests/Specs/FilterSpecs.cs /^ public async Task I_can_filter_the_export_to_only_include_messages_that_contain_guild_invite/;" m class:FilterSpecs
|
||||
I_can_filter_the_export_to_only_include_messages_that_contain_images DiscordChatExporter.Cli.Tests/Specs/FilterSpecs.cs /^ public async Task I_can_filter_the_export_to_only_include_messages_that_contain_images()$/;" m class:FilterSpecs
|
||||
I_can_filter_the_export_to_only_include_messages_that_contain_the_specified_mention DiscordChatExporter.Cli.Tests/Specs/FilterSpecs.cs /^ public async Task I_can_filter_the_export_to_only_include_messages_that_contain_the_specifie/;" m class:FilterSpecs
|
||||
I_can_filter_the_export_to_only_include_messages_that_contain_the_specified_text DiscordChatExporter.Cli.Tests/Specs/FilterSpecs.cs /^ public async Task I_can_filter_the_export_to_only_include_messages_that_contain_the_specifie/;" m class:FilterSpecs
|
||||
I_can_filter_the_export_to_only_include_messages_that_have_been_pinned DiscordChatExporter.Cli.Tests/Specs/FilterSpecs.cs /^ public async Task I_can_filter_the_export_to_only_include_messages_that_have_been_pinned()$/;" m class:FilterSpecs
|
||||
I_can_filter_the_export_to_only_include_messages_that_were_sent_by_the_specified_author DiscordChatExporter.Cli.Tests/Specs/FilterSpecs.cs /^ public async Task I_can_filter_the_export_to_only_include_messages_that_were_sent_by_the_spe/;" m class:FilterSpecs
|
||||
Id DiscordChatExporter.Core/Discord/Data/Common/IHasId.cs /^ Snowflake Id { get; }$/;" p interface:IHasId
|
||||
IgnoredEmojiTextNodeMatcher DiscordChatExporter.Core/Markdown/Parsing/MarkdownParser.cs /^ private static readonly IMatcher<MarkdownContext, MarkdownNode> IgnoredEmojiTextNodeMatcher /;" f class:MarkdownParser file:
|
||||
Image DiscordChatExporter.Core/Discord/Data/Embeds/EmbedKind.cs /^ Image,$/;" e enum:EmbedKind file:
|
||||
Image DiscordChatExporter.Core/Exporting/Filtering/MessageContentMatchKind.cs /^ Image,$/;" e enum:MessageContentMatchKind file:
|
||||
ImageCdn DiscordChatExporter.Core/Discord/Data/Common/ImageCdn.cs /^public static class ImageCdn$/;" c
|
||||
In Chrome .docs/Token-and-IDs.md /^#### In Chrome$/;" t subsection:Obtaining Token and Channel IDs""How to get a User Token""Through your web browser
|
||||
In Firefox .docs/Token-and-IDs.md /^#### In Firefox$/;" t subsection:Obtaining Token and Channel IDs""How to get a User Token""Through your web browser
|
||||
IncludeDirectChannels DiscordChatExporter.Cli/Commands/ExportAllCommand.cs /^ public bool IncludeDirectChannels { get; init; } = true;$/;" p class:ExportAllCommand
|
||||
IncludeGuildChannels DiscordChatExporter.Cli/Commands/ExportAllCommand.cs /^ public bool IncludeGuildChannels { get; init; } = true;$/;" p class:ExportAllCommand
|
||||
IncludeVoiceChannels DiscordChatExporter.Cli/Commands/ExportAllCommand.cs /^ public bool IncludeVoiceChannels { get; init; } = true;$/;" p class:ExportAllCommand
|
||||
IncludeVoiceChannels DiscordChatExporter.Cli/Commands/ExportGuildCommand.cs /^ public bool IncludeVoiceChannels { get; init; } = true;$/;" p class:ExportGuildCommand
|
||||
IncludeVoiceChannels DiscordChatExporter.Cli/Commands/GetChannelsCommand.cs /^ public bool IncludeVoiceChannels { get; init; } = true;$/;" p class:GetChannelsCommand
|
||||
Including threads .docs/Using-the-CLI.md /^#### Including threads$/;" t subsection:Using the CLI""Export a specific channel""Export channels from a specific server
|
||||
Including voice channels .docs/Using-the-CLI.md /^#### Including voice channels$/;" t subsection:Using the CLI""Export a specific channel""Export channels from a specific server
|
||||
Initialize DiscordChatExporter.Gui/App.axaml.cs /^ public override void Initialize()$/;" m class:App
|
||||
Initialize DiscordChatExporter.Gui/ViewModels/Components/DashboardViewModel.cs /^ private void Initialize()$/;" m class:DashboardViewModel file:
|
||||
InitializeTheme DiscordChatExporter.Gui/App.axaml.cs /^ private void InitializeTheme()$/;" m class:App file:
|
||||
InlineCodeBlockNode DiscordChatExporter.Core/Markdown/InlineCodeBlockNode.cs /^internal record InlineCodeBlockNode(string Code) : MarkdownNode;$/;" m
|
||||
InlineCodeBlockNodeMatcher DiscordChatExporter.Core/Markdown/Parsing/MarkdownParser.cs /^ private static readonly IMatcher<MarkdownContext, MarkdownNode> InlineCodeBlockNodeMatcher =$/;" f class:MarkdownParser file:
|
||||
Installation & Usage .docs/Readme.md /^## Installation & Usage$/;" s chapter:Home
|
||||
Instance DiscordChatExporter.Gui/Converters/ChannelToHierarchicalNameStringConverter.cs /^ public static ChannelToHierarchicalNameStringConverter Instance { get; } = new();$/;" p class:ChannelToHierarchicalNameStringConverter
|
||||
Instance DiscordChatExporter.Gui/Converters/ExportFormatToStringConverter.cs /^ public static ExportFormatToStringConverter Instance { get; } = new();$/;" p class:ExportFormatToStringConverter
|
||||
Instance DiscordChatExporter.Gui/Converters/LocaleToDisplayNameStringConverter.cs /^ public static LocaleToDisplayNameStringConverter Instance { get; } = new();$/;" p class:LocaleToDisplayNameStringConverter
|
||||
Instance DiscordChatExporter.Gui/Converters/SnowflakeToTimestampStringConverter.cs /^ public static SnowflakeToTimestampStringConverter Instance { get; } = new();$/;" p class:SnowflakeToTimestampStringConverter
|
||||
Interaction DiscordChatExporter.Core/Discord/Data/Interaction.cs /^public record Interaction(Snowflake Id, string Name, User User)$/;" m
|
||||
Internationalization DiscordChatExporter.Gui/Utils/Internationalization.cs /^internal static class Internationalization$/;" c
|
||||
InvalidFileNameChars DiscordChatExporter.Core/Utils/PathEx.cs /^ private static readonly HashSet<char> InvalidFileNameChars =$/;" f class:PathEx file:
|
||||
Invite DiscordChatExporter.Core/Discord/Data/Invite.cs /^public record Invite(string Code, Guild Guild, Channel? Channel)$/;" m
|
||||
Invite DiscordChatExporter.Core/Exporting/Filtering/MessageContentMatchKind.cs /^ Invite,$/;" e enum:MessageContentMatchKind file:
|
||||
Is24Hours DiscordChatExporter.Gui/Utils/Internationalization.cs /^ public static bool Is24Hours =>$/;" f class:Internationalization
|
||||
IsAutoUpdateEnabled DiscordChatExporter.Gui/ViewModels/Dialogs/SettingsViewModel.cs /^ public bool IsAutoUpdateEnabled$/;" p class:SettingsViewModel
|
||||
IsBotToken DiscordChatExporter.Cli/Commands/Base/DiscordCommandBase.cs /^ public bool IsBotToken { get; init; } = false;$/;" p class:DiscordCommandBase
|
||||
IsCancelButtonVisible DiscordChatExporter.Gui/ViewModels/Dialogs/MessageBoxViewModel.cs /^ public bool IsCancelButtonVisible => !string.IsNullOrWhiteSpace(CancelButtonText);$/;" f class:MessageBoxViewModel
|
||||
IsContentHidden DiscordChatExporter.Core/Exporting/HtmlMessageExtensions.cs /^ public static bool IsContentHidden(this Message message)$/;" m class:HtmlMessageExtensions
|
||||
IsDefaultButtonVisible DiscordChatExporter.Gui/ViewModels/Dialogs/MessageBoxViewModel.cs /^ public bool IsDefaultButtonVisible => !string.IsNullOrWhiteSpace(DefaultButtonText);$/;" f class:MessageBoxViewModel
|
||||
IsDevelopmentBuild DiscordChatExporter.Gui/Program.cs /^ public static bool IsDevelopmentBuild { get; } = Version.Major is <= 0 or >= 999;$/;" p class:Program
|
||||
IsMatch DiscordChatExporter.Core/Exporting/Filtering/MessageFilter.cs /^ public abstract bool IsMatch(Message message);$/;" m class:MessageFilter
|
||||
IsProgressIndeterminate DiscordChatExporter.Gui/ViewModels/Components/DashboardViewModel.cs /^ public bool IsProgressIndeterminate => IsBusy && Progress.Current.Fraction is <= 0 or >= 1;$/;" f class:DashboardViewModel
|
||||
IsReached DiscordChatExporter.Core/Exporting/Partitioning/NullPartitionLimit.cs /^ public override bool IsReached(long messagesWritten, long bytesWritten) => false;$/;" m class:NullPartitionLimit
|
||||
IsReached DiscordChatExporter.Core/Exporting/Partitioning/PartitionLimit.cs /^ public abstract bool IsReached(long messagesWritten, long bytesWritten);$/;" m class:PartitionLimit
|
||||
IsRunningInContainer DiscordChatExporter.Core/Utils/Docker.cs /^ public static bool IsRunningInContainer { get; } =$/;" p class:Docker
|
||||
IsTokenPersisted DiscordChatExporter.Gui/ViewModels/Dialogs/SettingsViewModel.cs /^ public bool IsTokenPersisted$/;" p class:SettingsViewModel
|
||||
IsUkraineSupportMessageDisabled DiscordChatExporter.Cli/Commands/Base/ExportCommandBase.cs /^ public bool IsUkraineSupportMessageDisabled { get; init; } = false;$/;" p class:ExportCommandBase
|
||||
IsUtcNormalizationEnabled DiscordChatExporter.Cli/Commands/Base/ExportCommandBase.cs /^ public bool IsUtcNormalizationEnabled { get; init; } = false;$/;" p class:ExportCommandBase
|
||||
IsUtcNormalizationEnabled DiscordChatExporter.Core/Exporting/ExportRequest.cs /^ public bool IsUtcNormalizationEnabled { get; }$/;" p class:ExportRequest
|
||||
IsUtcNormalizationEnabled DiscordChatExporter.Gui/ViewModels/Dialogs/SettingsViewModel.cs /^ public bool IsUtcNormalizationEnabled$/;" p class:SettingsViewModel
|
||||
Italic DiscordChatExporter.Core/Markdown/FormattingKind.cs /^ Italic,$/;" e enum:FormattingKind file:
|
||||
ItalicAltFormattingNodeMatcher DiscordChatExporter.Core/Markdown/Parsing/MarkdownParser.cs /^ private static readonly IMatcher<MarkdownContext, MarkdownNode> ItalicAltFormattingNodeMatch/;" f class:MarkdownParser file:
|
||||
ItalicBoldFormattingNodeMatcher DiscordChatExporter.Core/Markdown/Parsing/MarkdownParser.cs /^ > ItalicBoldFormattingNodeMatcher = new RegexMatcher<MarkdownContext, MarkdownNode>($/;" f class:MarkdownParser file:
|
||||
ItalicFormattingNodeMatcher DiscordChatExporter.Core/Markdown/Parsing/MarkdownParser.cs /^ private static readonly IMatcher<MarkdownContext, MarkdownNode> ItalicFormattingNodeMatcher /;" f class:MarkdownParser file:
|
||||
ItalicUnderlineFormattingNodeMatcher DiscordChatExporter.Core/Markdown/Parsing/MarkdownParser.cs /^ > ItalicUnderlineFormattingNodeMatcher = new RegexMatcher<MarkdownContext, MarkdownNode>($/;" f class:MarkdownParser file:
|
||||
JSON .docs/Getting-started.md /^### JSON$/;" S section:Getting started""File formats
|
||||
Json DiscordChatExporter.Core/Exporting/ExportFormat.cs /^ Json,$/;" e enum:ExportFormat file:
|
||||
JsonAttachmentSpecs DiscordChatExporter.Cli.Tests/Specs/JsonAttachmentSpecs.cs /^public class JsonAttachmentSpecs$/;" c
|
||||
JsonContentSpecs DiscordChatExporter.Cli.Tests/Specs/JsonContentSpecs.cs /^public class JsonContentSpecs$/;" c
|
||||
JsonEmbedSpecs DiscordChatExporter.Cli.Tests/Specs/JsonEmbedSpecs.cs /^public class JsonEmbedSpecs$/;" c
|
||||
JsonEmojiSpecs DiscordChatExporter.Cli.Tests/Specs/JsonEmojiSpecs.cs /^public class JsonEmojiSpecs$/;" c
|
||||
JsonMentionSpecs DiscordChatExporter.Cli.Tests/Specs/JsonMentionSpecs.cs /^public class JsonMentionSpecs$/;" c
|
||||
JsonMessageWriter DiscordChatExporter.Core/Exporting/JsonMessageWriter.cs /^internal class JsonMessageWriter(Stream stream, ExportContext context)$/;" m
|
||||
JsonStickerSpecs DiscordChatExporter.Cli.Tests/Specs/JsonStickerSpecs.cs /^public class JsonStickerSpecs$/;" c
|
||||
Light DiscordChatExporter.Gui/Framework/ThemeVariant.cs /^ Light,$/;" e enum:ThemeVariant file:
|
||||
Link DiscordChatExporter.Core/Discord/Data/Embeds/EmbedKind.cs /^ Link,$/;" e enum:EmbedKind file:
|
||||
Link DiscordChatExporter.Core/Exporting/Filtering/MessageContentMatchKind.cs /^ Link,$/;" e enum:MessageContentMatchKind file:
|
||||
LinkNode DiscordChatExporter.Core/Markdown/LinkNode.cs /^internal record LinkNode(string Url, IReadOnlyList<MarkdownNode> Children)$/;" m
|
||||
List channels in a server .docs/Using-the-CLI.md /^### List channels in a server$/;" S section:Using the CLI""Export a specific channel
|
||||
List direct message channels .docs/Using-the-CLI.md /^### List direct message channels$/;" S section:Using the CLI""Export a specific channel
|
||||
List servers .docs/Using-the-CLI.md /^### List servers$/;" S section:Using the CLI""Export a specific channel
|
||||
ListItemNode DiscordChatExporter.Core/Markdown/ListItemNode.cs /^internal record ListItemNode(IReadOnlyList<MarkdownNode> Children) : MarkdownNode, IContainerNod/;" m
|
||||
ListNode DiscordChatExporter.Core/Markdown/ListNode.cs /^internal record ListNode(IReadOnlyList<ListItemNode> Items) : MarkdownNode;$/;" m
|
||||
ListNodeMatcher DiscordChatExporter.Core/Markdown/Parsing/MarkdownParser.cs /^ private static readonly IMatcher<MarkdownContext, MarkdownNode> ListNodeMatcher =$/;" f class:MarkdownParser file:
|
||||
LoadAsync DiscordChatExporter.Core/Discord/Dump/DataDump.cs /^ public static async ValueTask<DataDump> LoadAsync($/;" m class:DataDump
|
||||
Loading DiscordChatExporter.Core/Discord/Data/MessageFlags.cs /^ Loading = 128,$/;" e enum:MessageFlags file:
|
||||
Loading the .plist into launchctl .docs/Scheduling-MacOS.md /^## Loading the .plist into launchctl$/;" s chapter:Scheduling exports on macOS
|
||||
Locale DiscordChatExporter.Cli/Commands/Base/ExportCommandBase.cs /^ public string? Locale { get; init; }$/;" p class:ExportCommandBase
|
||||
Locale DiscordChatExporter.Core/Exporting/ExportRequest.cs /^ public string? Locale { get; }$/;" p class:ExportRequest
|
||||
Locale DiscordChatExporter.Gui/ViewModels/Dialogs/SettingsViewModel.cs /^ public string Locale$/;" p class:SettingsViewModel
|
||||
LocaleToDisplayNameStringConverter DiscordChatExporter.Gui/Converters/LocaleToDisplayNameStringConverter.cs /^public class LocaleToDisplayNameStringConverter : IValueConverter$/;" c
|
||||
Locker DiscordChatExporter.Cli.Tests/Infra/ExportWrapper.cs /^ private static readonly AsyncKeyedLocker<string> Locker = new();$/;" f class:ExportWrapper file:
|
||||
Log DiscordChatExporter.Core/Utils/Extensions/SuperpowerExtensions.cs /^ public static TextParser<T> Log<T>(this TextParser<T> parser, string description) =>$/;" m class:SuperpowerExtensions
|
||||
Lottie DiscordChatExporter.Core/Discord/Data/StickerFormat.cs /^ Lottie = 3,$/;" e enum:StickerFormat file:
|
||||
Main DiscordChatExporter.Cli/Program.cs /^ public static async Task<int> Main(string[] args) =>$/;" m class:Program
|
||||
Main DiscordChatExporter.Gui/Program.cs /^ public static int Main(string[] args)$/;" m class:Program
|
||||
MainView DiscordChatExporter.Gui/Views/MainView.axaml.cs /^ public MainView() => InitializeComponent();$/;" m class:MainView
|
||||
MainView DiscordChatExporter.Gui/Views/MainView.axaml.cs /^public partial class MainView : Window<MainViewModel>$/;" c
|
||||
MainViewModel DiscordChatExporter.Gui/ViewModels/MainViewModel.cs /^public partial class MainViewModel($/;" m
|
||||
MarkdownContext DiscordChatExporter.Core/Markdown/Parsing/MarkdownContext.cs /^internal readonly record struct MarkdownContext(int Depth = 0);$/;" m
|
||||
MarkdownNode DiscordChatExporter.Core/Markdown/EmojiNode.cs /^) : MarkdownNode$/;" p
|
||||
MarkdownNode DiscordChatExporter.Core/Markdown/Parsing/MarkdownParser.cs /^ where TNode : MarkdownNode$/;" p class:MarkdownParser
|
||||
MarkdownNode DiscordChatExporter.Core/Markdown/TimestampNode.cs /^internal record TimestampNode(DateTimeOffset? Instant, string? Format) : MarkdownNode$/;" p
|
||||
MarkdownParser DiscordChatExporter.Core/Markdown/Parsing/MarkdownParser.cs /^internal static partial class MarkdownParser$/;" c
|
||||
MarkdownTestCases DiscordChatExporter.Cli.Tests/Infra/ChannelIds.cs /^ public static Snowflake MarkdownTestCases { get; } = Snowflake.Parse("866459526819348521");$/;" p class:ChannelIds
|
||||
MarkdownVisitor DiscordChatExporter.Core/Markdown/Parsing/MarkdownVisitor.cs /^internal abstract class MarkdownVisitor$/;" c
|
||||
MaskedLinkNodeMatcher DiscordChatExporter.Core/Markdown/Parsing/MarkdownParser.cs /^ private static readonly IMatcher<MarkdownContext, MarkdownNode> MaskedLinkNodeMatcher =$/;" f class:MarkdownParser file:
|
||||
MatchAll DiscordChatExporter.Core/Markdown/Parsing/IMatcher.cs /^ public static IEnumerable<ParsedMatch<TValue>> MatchAll<TContext, TValue>($/;" m class:MatcherExtensions
|
||||
MatcherExtensions DiscordChatExporter.Core/Markdown/Parsing/IMatcher.cs /^internal static class MatcherExtensions$/;" c
|
||||
Member DiscordChatExporter.Core/Discord/Data/Member.cs /^public partial record Member$/;" p
|
||||
Member DiscordChatExporter.Core/Discord/Data/Member.cs /^public partial record Member($/;" m
|
||||
MentionKind DiscordChatExporter.Core/Markdown/MentionKind.cs /^internal enum MentionKind$/;" g
|
||||
MentionTestCases DiscordChatExporter.Cli.Tests/Infra/ChannelIds.cs /^ public static Snowflake MentionTestCases { get; } = Snowflake.Parse("866458801389174794");$/;" p class:ChannelIds
|
||||
MentionsFilter DiscordChatExporter.Core/Exporting/Filtering/Parsing/FilterGrammar.cs /^ private static readonly TextParser<MessageFilter> MentionsFilter = Span.EqualToIgnoreCase($/;" f class:FilterGrammar file:
|
||||
MentionsMessageFilter DiscordChatExporter.Core/Exporting/Filtering/MentionsMessageFilter.cs /^internal class MentionsMessageFilter(string value) : MessageFilter$/;" m
|
||||
Message DiscordChatExporter.Core/Discord/Data/Message.cs /^public partial record Message$/;" p
|
||||
Message DiscordChatExporter.Core/Discord/Data/Message.cs /^public partial record Message($/;" m
|
||||
Message filters .docs/Message-filters.md /^# Message filters$/;" c
|
||||
MessageBox DiscordChatExporter.Gui/Utils/NativeMethods.cs /^ public static extern int MessageBox(nint hWnd, string text, string caption, uint type);$/;" m class:NativeMethods.Windows file:
|
||||
MessageBoxView DiscordChatExporter.Gui/Views/Dialogs/MessageBoxView.axaml.cs /^ public MessageBoxView() => InitializeComponent();$/;" m class:MessageBoxView
|
||||
MessageBoxView DiscordChatExporter.Gui/Views/Dialogs/MessageBoxView.axaml.cs /^public partial class MessageBoxView : UserControl<MessageBoxViewModel>$/;" c
|
||||
MessageBoxViewModel DiscordChatExporter.Gui/ViewModels/Dialogs/MessageBoxViewModel.cs /^public partial class MessageBoxViewModel : DialogViewModelBase$/;" c
|
||||
MessageContentMatchKind DiscordChatExporter.Core/Exporting/Filtering/MessageContentMatchKind.cs /^internal enum MessageContentMatchKind$/;" g
|
||||
MessageCountPartitionLimit DiscordChatExporter.Core/Exporting/Partitioning/MessageCountPartitionLimit.cs /^internal class MessageCountPartitionLimit(long limit) : PartitionLimit$/;" m
|
||||
MessageExporter DiscordChatExporter.Core/Exporting/MessageExporter.cs /^internal partial class MessageExporter$/;" c
|
||||
MessageExporter DiscordChatExporter.Core/Exporting/MessageExporter.cs /^internal partial class MessageExporter(ExportContext context) : IAsyncDisposable$/;" m
|
||||
MessageFilter DiscordChatExporter.Cli/Commands/Base/ExportCommandBase.cs /^ public MessageFilter MessageFilter { get; init; } = MessageFilter.Null;$/;" p class:ExportCommandBase
|
||||
MessageFilter DiscordChatExporter.Core/Exporting/ExportRequest.cs /^ public MessageFilter MessageFilter { get; }$/;" p class:ExportRequest
|
||||
MessageFilter DiscordChatExporter.Core/Exporting/Filtering/MessageFilter.cs /^public abstract partial class MessageFilter$/;" c
|
||||
MessageFilter DiscordChatExporter.Core/Exporting/Filtering/MessageFilter.cs /^public partial class MessageFilter$/;" c
|
||||
MessageFlags DiscordChatExporter.Core/Discord/Data/MessageFlags.cs /^public enum MessageFlags$/;" g
|
||||
MessageKind DiscordChatExporter.Core/Discord/Data/MessageKind.cs /^public enum MessageKind$/;" g
|
||||
MessageWriter DiscordChatExporter.Core/Exporting/MessageWriter.cs /^internal abstract class MessageWriter(Stream stream, ExportContext context) : IAsyncDisposable$/;" m
|
||||
MinimalNodeMatcher DiscordChatExporter.Core/Markdown/Parsing/MarkdownParser.cs /^ private static readonly IMatcher<MarkdownContext, MarkdownNode> MinimalNodeMatcher =$/;" f class:MarkdownParser file:
|
||||
MultiLineCodeBlockNode DiscordChatExporter.Core/Markdown/MultiLineCodeBlockNode.cs /^internal record MultiLineCodeBlockNode(string Language, string Code) : MarkdownNode;$/;" m
|
||||
MultiLineCodeBlockNodeMatcher DiscordChatExporter.Core/Markdown/Parsing/MarkdownParser.cs /^ private static readonly IMatcher<MarkdownContext, MarkdownNode> MultiLineCodeBlockNodeMatche/;" f class:MarkdownParser file:
|
||||
MultiLineQuoteNodeMatcher DiscordChatExporter.Core/Markdown/Parsing/MarkdownParser.cs /^ private static readonly IMatcher<MarkdownContext, MarkdownNode> MultiLineQuoteNodeMatcher =$/;" f class:MarkdownParser file:
|
||||
Name DiscordChatExporter.Gui/Program.cs /^ public static string Name { get; } = Assembly.GetName().Name ?? "DiscordChatExporter";$/;" p class:Program
|
||||
NativeMethods DiscordChatExporter.Gui/Utils/NativeMethods.cs /^internal static class NativeMethods$/;" c
|
||||
NegatedFilter DiscordChatExporter.Core/Exporting/Filtering/Parsing/FilterGrammar.cs /^ private static readonly TextParser<MessageFilter> NegatedFilter = Character$/;" f class:FilterGrammar file:
|
||||
NegatedMessageFilter DiscordChatExporter.Core/Exporting/Filtering/NegatedMessageFilter.cs /^internal class NegatedMessageFilter(MessageFilter filter) : MessageFilter$/;" m
|
||||
NodeMatcher DiscordChatExporter.Core/Markdown/Parsing/MarkdownParser.cs /^ private static readonly IMatcher<MarkdownContext, MarkdownNode> NodeMatcher =$/;" f class:MarkdownParser file:
|
||||
None DiscordChatExporter.Cli/Commands/Shared/ThreadInclusionMode.cs /^ None,$/;" e enum:ThreadInclusionMode file:
|
||||
None DiscordChatExporter.Core/Discord/Data/ApplicationFlags.cs /^ None = 0,$/;" e enum:ApplicationFlags file:
|
||||
None DiscordChatExporter.Core/Discord/Data/MessageFlags.cs /^ None = 0,$/;" e enum:MessageFlags file:
|
||||
None DiscordChatExporter.Gui/Models/ThreadInclusionMode.cs /^ None,$/;" e enum:ThreadInclusionMode file:
|
||||
Notify DiscordChatExporter.Gui/Framework/SnackbarManager.cs /^ public void Notify($/;" m class:SnackbarManager
|
||||
Notify DiscordChatExporter.Gui/Framework/SnackbarManager.cs /^ public void Notify(string message, TimeSpan? duration = null) =>$/;" m class:SnackbarManager
|
||||
NotifyPropertyChangedExtensions DiscordChatExporter.Gui/Utils/Extensions/NotifyPropertyChangedExtensions.cs /^internal static class NotifyPropertyChangedExtensions$/;" c
|
||||
Null DiscordChatExporter.Core/Exporting/Filtering/MessageFilter.cs /^ public static MessageFilter Null { get; } = new NullMessageFilter();$/;" p class:MessageFilter
|
||||
Null DiscordChatExporter.Core/Exporting/Partitioning/PartitionLimit.cs /^ public static PartitionLimit Null { get; } = new NullPartitionLimit();$/;" p class:PartitionLimit
|
||||
NullIfWhiteSpace DiscordChatExporter.Core/Utils/Extensions/StringExtensions.cs /^ public static string? NullIfWhiteSpace(this string str) =>$/;" m class:StringExtensions
|
||||
NullMessageFilter DiscordChatExporter.Core/Exporting/Filtering/NullMessageFilter.cs /^internal class NullMessageFilter : MessageFilter$/;" c
|
||||
NullPartitionLimit DiscordChatExporter.Core/Exporting/Partitioning/NullPartitionLimit.cs /^internal class NullPartitionLimit : PartitionLimit$/;" c
|
||||
Obtaining Token and Channel IDs .docs/Token-and-IDs.md /^# Obtaining Token and Channel IDs$/;" c
|
||||
OnAllPropertiesChanged DiscordChatExporter.Gui/Framework/ViewModelBase.cs /^ protected void OnAllPropertiesChanged() => OnPropertyChanged(string.Empty);$/;" m class:ViewModelBase
|
||||
OnFrameworkInitializationCompleted DiscordChatExporter.Gui/App.axaml.cs /^ public override void OnFrameworkInitializationCompleted()$/;" m class:App
|
||||
OpenDiscord DiscordChatExporter.Gui/ViewModels/Components/DashboardViewModel.cs /^ private void OpenDiscord() => ProcessEx.StartShellExecute("https:\/\/discord.com\/app");$/;" m class:DashboardViewModel file:
|
||||
OpenDiscordDeveloperPortal DiscordChatExporter.Gui/ViewModels/Components/DashboardViewModel.cs /^ private void OpenDiscordDeveloperPortal() =>$/;" m class:DashboardViewModel file:
|
||||
Or DiscordChatExporter.Core/Exporting/Filtering/BinaryExpressionKind.cs /^ Or,$/;" e enum:BinaryExpressionKind file:
|
||||
OutputDirPath DiscordChatExporter.Core/Exporting/ExportRequest.cs /^ public string OutputDirPath { get; }$/;" p class:ExportRequest
|
||||
OutputFilePath DiscordChatExporter.Core/Exporting/ExportRequest.cs /^ public string OutputFilePath { get; }$/;" p class:ExportRequest
|
||||
OutputPath DiscordChatExporter.Cli/Commands/Base/ExportCommandBase.cs /^ public string OutputPath$/;" p class:ExportCommandBase
|
||||
ParallelLimit DiscordChatExporter.Cli/Commands/Base/ExportCommandBase.cs /^ public int ParallelLimit { get; init; } = 1;$/;" p class:ExportCommandBase
|
||||
ParallelLimit DiscordChatExporter.Gui/ViewModels/Dialogs/SettingsViewModel.cs /^ public int ParallelLimit$/;" p class:SettingsViewModel
|
||||
Parse DiscordChatExporter.Cli.Tests/Utils/Html.cs /^ public static IHtmlDocument Parse(string source) => Parser.ParseDocument(source);$/;" m class:Html
|
||||
Parse DiscordChatExporter.Core/Discord/Dump/DataDump.cs /^ public static DataDump Parse(JsonElement json)$/;" m class:DataDump
|
||||
Parse DiscordChatExporter.Core/Discord/Snowflake.cs /^ public static Snowflake Parse(string value) => Parse(value, null);$/;" m struct:Snowflake
|
||||
Parse DiscordChatExporter.Core/Discord/Snowflake.cs /^ public static Snowflake Parse(string value, IFormatProvider? formatProvider) =>$/;" m struct:Snowflake
|
||||
Parse DiscordChatExporter.Core/Exporting/Filtering/MessageFilter.cs /^ public static MessageFilter Parse(string value) => FilterGrammar.Filter.Parse(value);$/;" m class:MessageFilter
|
||||
Parse DiscordChatExporter.Core/Exporting/Partitioning/PartitionLimit.cs /^ public static PartitionLimit Parse(string value, IFormatProvider? formatProvider = null) =>$/;" m class:PartitionLimit
|
||||
Parse DiscordChatExporter.Core/Markdown/Parsing/MarkdownParser.cs /^ private static IReadOnlyList<MarkdownNode> Parse($/;" m class:MarkdownParser file:
|
||||
Parse DiscordChatExporter.Core/Markdown/Parsing/MarkdownParser.cs /^ public static IReadOnlyList<MarkdownNode> Parse(string markdown) =>$/;" m class:MarkdownParser
|
||||
ParseMinimal DiscordChatExporter.Core/Markdown/Parsing/MarkdownParser.cs /^ private static IReadOnlyList<MarkdownNode> ParseMinimal($/;" m class:MarkdownParser file:
|
||||
ParseMinimal DiscordChatExporter.Core/Markdown/Parsing/MarkdownParser.cs /^ public static IReadOnlyList<MarkdownNode> ParseMinimal(string markdown) =>$/;" m class:MarkdownParser
|
||||
ParsedMatch DiscordChatExporter.Core/Markdown/Parsing/ParsedMatch.cs /^internal class ParsedMatch<T>(StringSegment segment, T value)$/;" m
|
||||
Parser DiscordChatExporter.Cli.Tests/Utils/Html.cs /^ private static readonly IHtmlParser Parser = new HtmlParser();$/;" f class:Html file:
|
||||
PartitionLimit DiscordChatExporter.Cli/Commands/Base/ExportCommandBase.cs /^ public PartitionLimit PartitionLimit { get; init; } = PartitionLimit.Null;$/;" p class:ExportCommandBase
|
||||
PartitionLimit DiscordChatExporter.Core/Exporting/ExportRequest.cs /^ public PartitionLimit PartitionLimit { get; }$/;" p class:ExportRequest
|
||||
PartitionLimit DiscordChatExporter.Core/Exporting/Partitioning/PartitionLimit.cs /^public abstract partial class PartitionLimit$/;" c
|
||||
PartitionLimit DiscordChatExporter.Core/Exporting/Partitioning/PartitionLimit.cs /^public partial class PartitionLimit$/;" c
|
||||
Partitioning .docs/Using-the-CLI.md /^#### Partitioning$/;" t section:Using the CLI""Export a specific channel
|
||||
PartitioningSpecs DiscordChatExporter.Cli.Tests/Specs/PartitioningSpecs.cs /^public class PartitioningSpecs$/;" c
|
||||
PathEx DiscordChatExporter.Cli.Tests/Utils/TempDir.cs /^using PathEx = System.IO.Path;$/;" t file:
|
||||
PathEx DiscordChatExporter.Cli.Tests/Utils/TempFile.cs /^using PathEx = System.IO.Path;$/;" t file:
|
||||
PathEx DiscordChatExporter.Core/Utils/PathEx.cs /^public static class PathEx$/;" c
|
||||
Pin DiscordChatExporter.Core/Exporting/Filtering/MessageContentMatchKind.cs /^ Pin,$/;" e enum:MessageContentMatchKind file:
|
||||
Pipe DiscordChatExporter.Core/Utils/Extensions/GenericExtensions.cs /^ public static TOut Pipe<TIn, TOut>(this TIn input, Func<TIn, TOut> transform) =>$/;" m class:GenericExtensions
|
||||
Plain Text .docs/Getting-started.md /^### Plain Text$/;" S section:Getting started""File formats
|
||||
PlainText DiscordChatExporter.Core/Exporting/ExportFormat.cs /^ PlainText,$/;" e enum:ExportFormat file:
|
||||
PlainTextContentSpecs DiscordChatExporter.Cli.Tests/Specs/PlainTextContentSpecs.cs /^public class PlainTextContentSpecs$/;" c
|
||||
PlainTextMarkdownVisitor DiscordChatExporter.Core/Exporting/PlainTextMarkdownVisitor.cs /^internal partial class PlainTextMarkdownVisitor$/;" c
|
||||
PlainTextMarkdownVisitor DiscordChatExporter.Core/Exporting/PlainTextMarkdownVisitor.cs /^internal partial class PlainTextMarkdownVisitor(ExportContext context, StringBuilder buffer)$/;" m
|
||||
PlainTextMessageExtensions DiscordChatExporter.Core/Exporting/PlainTextMessageExtensions.cs /^internal static class PlainTextMessageExtensions$/;" c
|
||||
PlainTextMessageWriter DiscordChatExporter.Core/Exporting/PlainTextMessageWriter.cs /^internal class PlainTextMessageWriter(Stream stream, ExportContext context)$/;" m
|
||||
Png DiscordChatExporter.Core/Discord/Data/StickerFormat.cs /^ Png = 1,$/;" e enum:StickerFormat file:
|
||||
PopulateChildren DiscordChatExporter.Core/Utils/Extensions/ExceptionExtensions.cs /^ private static void PopulateChildren(this Exception exception, ICollection<Exception> childr/;" m class:ExceptionExtensions file:
|
||||
PrimitiveFilter DiscordChatExporter.Core/Exporting/Filtering/Parsing/FilterGrammar.cs /^ private static readonly TextParser<MessageFilter> PrimitiveFilter = Parse.OneOf($/;" f class:FilterGrammar file:
|
||||
ProcessEx DiscordChatExporter.Gui/Utils/ProcessEx.cs /^internal static class ProcessEx$/;" c
|
||||
Program DiscordChatExporter.Cli/Program.cs /^public static class Program$/;" c
|
||||
Program DiscordChatExporter.Gui/Program.cs /^public static class Program$/;" c
|
||||
Progress DiscordChatExporter.Gui/ViewModels/Components/DashboardViewModel.cs /^ public ProgressContainer<Percentage> Progress { get; } = new();$/;" p class:DashboardViewModel
|
||||
ProjectDocumentationUrl DiscordChatExporter.Gui/Program.cs /^ public static string ProjectDocumentationUrl { get; } = ProjectUrl + "\/tree\/master\/.docs"/;" p class:Program
|
||||
ProjectReleasesUrl DiscordChatExporter.Gui/Program.cs /^ public static string ProjectReleasesUrl { get; } = $"{ProjectUrl}\/releases";$/;" p class:Program
|
||||
ProjectUrl DiscordChatExporter.Gui/Program.cs /^ public static string ProjectUrl { get; } = "https:\/\/github.com\/Tyrrrz\/DiscordChatExporte/;" p class:Program
|
||||
PromptDirectoryPathAsync DiscordChatExporter.Gui/Framework/DialogManager.cs /^ public async Task<string?> PromptDirectoryPathAsync(string defaultDirPath = "")$/;" m class:DialogManager
|
||||
PullChannelsAsync DiscordChatExporter.Gui/ViewModels/Components/DashboardViewModel.cs /^ private async Task PullChannelsAsync()$/;" m class:DashboardViewModel file:
|
||||
PullGuildsAsync DiscordChatExporter.Gui/ViewModels/Components/DashboardViewModel.cs /^ private async Task PullGuildsAsync()$/;" m class:DashboardViewModel file:
|
||||
Pulling .docs/Docker.md /^## Pulling$/;" s chapter:Docker usage instructions
|
||||
Quote DiscordChatExporter.Core/Markdown/FormattingKind.cs /^ Quote,$/;" e enum:FormattingKind file:
|
||||
QuotedString DiscordChatExporter.Core/Exporting/Filtering/Parsing/FilterGrammar.cs /^ private static readonly TextParser<string> QuotedString =$/;" f class:FilterGrammar file:
|
||||
Reaction DiscordChatExporter.Core/Discord/Data/Reaction.cs /^public record Reaction(Emoji Emoji, int Count)$/;" m
|
||||
ReactionFilter DiscordChatExporter.Core/Exporting/Filtering/Parsing/FilterGrammar.cs /^ private static readonly TextParser<MessageFilter> ReactionFilter = Span.EqualToIgnoreCase($/;" f class:FilterGrammar file:
|
||||
ReactionMessageFilter DiscordChatExporter.Core/Exporting/Filtering/ReactionMessageFilter.cs /^internal class ReactionMessageFilter(string value) : MessageFilter$/;" m
|
||||
RecipientAdd DiscordChatExporter.Core/Discord/Data/MessageKind.cs /^ RecipientAdd = 1,$/;" e enum:MessageKind file:
|
||||
RecipientRemove DiscordChatExporter.Core/Discord/Data/MessageKind.cs /^ RecipientRemove = 2,$/;" e enum:MessageKind file:
|
||||
RegexMatcher DiscordChatExporter.Core/Markdown/Parsing/RegexMatcher.cs /^internal class RegexMatcher<TContext, TValue>($/;" m
|
||||
RepeatedSingleLineQuoteNodeMatcher DiscordChatExporter.Core/Markdown/Parsing/MarkdownParser.cs /^ > RepeatedSingleLineQuoteNodeMatcher = new RegexMatcher<MarkdownContext, MarkdownNode>($/;" f class:MarkdownParser file:
|
||||
ReplaceWhiteSpace DiscordChatExporter.Cli.Tests/Utils/Extensions/StringExtensions.cs /^ public static string ReplaceWhiteSpace(this string str, string replacement = " ")$/;" m class:StringExtensions
|
||||
Reply DiscordChatExporter.Core/Discord/Data/MessageKind.cs /^ Reply = 19,$/;" e enum:MessageKind file:
|
||||
ReplyTestCases DiscordChatExporter.Cli.Tests/Infra/ChannelIds.cs /^ public static Snowflake ReplyTestCases { get; } = Snowflake.Parse("866459871934677052");$/;" p class:ChannelIds
|
||||
ResetAlpha DiscordChatExporter.Core/Utils/Extensions/ColorExtensions.cs /^ public static Color ResetAlpha(this Color color) => color.WithAlpha(255);$/;" m class:ColorExtensions
|
||||
ResiliencePipeline DiscordChatExporter.Core/Utils/Http.cs /^ public static ResiliencePipeline ResiliencePipeline { get; } =$/;" p class:Http
|
||||
ResponseResiliencePipeline DiscordChatExporter.Core/Utils/Http.cs /^ public static ResiliencePipeline<HttpResponseMessage> ResponseResiliencePipeline { get; } =$/;" p class:Http
|
||||
Reusing assets .docs/Using-the-CLI.md /^#### Reusing assets$/;" t section:Using the CLI""Export a specific channel
|
||||
Rich DiscordChatExporter.Core/Discord/Data/Embeds/EmbedKind.cs /^ Rich,$/;" e enum:EmbedKind file:
|
||||
Role DiscordChatExporter.Core/Discord/Data/Role.cs /^public record Role(Snowflake Id, string Name, int Position, Color? Color) : IHasId$/;" m
|
||||
Role DiscordChatExporter.Core/Markdown/MentionKind.cs /^ Role,$/;" e enum:MentionKind file:
|
||||
RoleMentionNodeMatcher DiscordChatExporter.Core/Markdown/Parsing/MarkdownParser.cs /^ private static readonly IMatcher<MarkdownContext, MarkdownNode> RoleMentionNodeMatcher =$/;" f class:MarkdownParser file:
|
||||
Scheduling exports on Windows .docs/Scheduling-Windows.md /^# Scheduling exports on Windows$/;" c
|
||||
Scheduling exports on macOS .docs/Scheduling-MacOS.md /^# Scheduling exports on macOS$/;" c
|
||||
Scheduling exports with Cron .docs/Scheduling-Linux.md /^# Scheduling exports with Cron$/;" c
|
||||
Scheduling with Task Scheduler .docs/Scheduling-Windows.md /^## Scheduling with Task Scheduler$/;" s chapter:Scheduling exports on Windows
|
||||
Screenshots Readme.md /^## Screenshots$/;" s chapter:DiscordChatExporter
|
||||
Secrets DiscordChatExporter.Cli.Tests/Infra/Secrets.cs /^internal static class Secrets$/;" c
|
||||
See also Readme.md /^## See also$/;" s chapter:DiscordChatExporter
|
||||
SelectedChannels DiscordChatExporter.Gui/ViewModels/Components/DashboardViewModel.cs /^ public ObservableCollection<ChannelConnection> SelectedChannels { get; } = [];$/;" p class:DashboardViewModel
|
||||
SelfContainedSpecs DiscordChatExporter.Cli.Tests/Specs/SelfContainedSpecs.cs /^public class SelfContainedSpecs$/;" c
|
||||
SelfContainedTestCases DiscordChatExporter.Cli.Tests/Infra/ChannelIds.cs /^ public static Snowflake SelfContainedTestCases { get; } = Snowflake.Parse("88744143267837956/;" p class:ChannelIds
|
||||
SetPath DiscordChatExporter.Core/Utils/UrlBuilder.cs /^ public UrlBuilder SetPath(string path)$/;" m class:UrlBuilder
|
||||
SetQueryParameter DiscordChatExporter.Core/Utils/UrlBuilder.cs /^ public UrlBuilder SetQueryParameter(string key, string? value, bool ignoreUnsetValue = true)$/;" m class:UrlBuilder
|
||||
Settings .docs/Using-the-GUI.md /^## Settings$/;" s chapter:Using the GUI
|
||||
SettingsService DiscordChatExporter.Gui/Services/SettingsService.cs /^public partial class SettingsService$/;" c
|
||||
SettingsService DiscordChatExporter.Gui/Services/SettingsService.cs /^public partial class SettingsService()$/;" m
|
||||
SettingsView DiscordChatExporter.Gui/Views/Dialogs/SettingsView.axaml.cs /^ public SettingsView() => InitializeComponent();$/;" m class:SettingsView
|
||||
SettingsView DiscordChatExporter.Gui/Views/Dialogs/SettingsView.axaml.cs /^public partial class SettingsView : UserControl<SettingsViewModel>$/;" c
|
||||
SettingsViewModel DiscordChatExporter.Gui/ViewModels/Dialogs/SettingsViewModel.cs /^ public SettingsViewModel(SettingsService settingsService)$/;" m class:SettingsViewModel
|
||||
SettingsViewModel DiscordChatExporter.Gui/ViewModels/Dialogs/SettingsViewModel.cs /^public class SettingsViewModel : DialogViewModelBase$/;" c
|
||||
ShouldDownloadAssets DiscordChatExporter.Cli/Commands/Base/ExportCommandBase.cs /^ public bool ShouldDownloadAssets { get; init; }$/;" p class:ExportCommandBase
|
||||
ShouldDownloadAssets DiscordChatExporter.Core/Exporting/ExportRequest.cs /^ public bool ShouldDownloadAssets { get; }$/;" p class:ExportRequest
|
||||
ShouldFormatMarkdown DiscordChatExporter.Cli/Commands/Base/ExportCommandBase.cs /^ public bool ShouldFormatMarkdown { get; init; } = true;$/;" p class:ExportCommandBase
|
||||
ShouldFormatMarkdown DiscordChatExporter.Core/Exporting/ExportRequest.cs /^ public bool ShouldFormatMarkdown { get; }$/;" p class:ExportRequest
|
||||
ShouldReuseAssets DiscordChatExporter.Cli/Commands/Base/ExportCommandBase.cs /^ public bool ShouldReuseAssets { get; init; } = false;$/;" p class:ExportCommandBase
|
||||
ShouldReuseAssets DiscordChatExporter.Core/Exporting/ExportRequest.cs /^ public bool ShouldReuseAssets { get; }$/;" p class:ExportRequest
|
||||
ShowDialogAsync DiscordChatExporter.Gui/Framework/DialogManager.cs /^ public async Task<T?> ShowDialogAsync<T>(DialogViewModelBase<T> dialog)$/;" m class:DialogManager
|
||||
ShowHelp DiscordChatExporter.Gui/ViewModels/Components/DashboardViewModel.cs /^ private void ShowHelp() => ProcessEx.StartShellExecute(Program.ProjectDocumentationUrl);$/;" m class:DashboardViewModel file:
|
||||
ShowSettingsAsync DiscordChatExporter.Gui/ViewModels/Components/DashboardViewModel.cs /^ private async Task ShowSettingsAsync() =>$/;" m class:DashboardViewModel file:
|
||||
ShrugTextNodeMatcher DiscordChatExporter.Core/Markdown/Parsing/MarkdownParser.cs /^ private static readonly IMatcher<MarkdownContext, MarkdownNode> ShrugTextNodeMatcher =$/;" f class:MarkdownParser file:
|
||||
SingleLineQuoteNodeMatcher DiscordChatExporter.Core/Markdown/Parsing/MarkdownParser.cs /^ private static readonly IMatcher<MarkdownContext, MarkdownNode> SingleLineQuoteNodeMatcher =$/;" f class:MarkdownParser file:
|
||||
SnackbarManager DiscordChatExporter.Gui/Framework/SnackbarManager.cs /^public class SnackbarManager$/;" c
|
||||
Snowflake DiscordChatExporter.Core/Discord/Snowflake.cs /^public partial record struct Snowflake : IComparable<Snowflake>, IComparable$/;" s
|
||||
Snowflake DiscordChatExporter.Core/Discord/Snowflake.cs /^public partial record struct Snowflake$/;" s
|
||||
Snowflake DiscordChatExporter.Core/Discord/Snowflake.cs /^public readonly partial record struct Snowflake(ulong Value)$/;" m
|
||||
SnowflakeToTimestampStringConverter DiscordChatExporter.Gui/Converters/SnowflakeToTimestampStringConverter.cs /^public class SnowflakeToTimestampStringConverter : IValueConverter$/;" c
|
||||
Sound DiscordChatExporter.Core/Exporting/Filtering/MessageContentMatchKind.cs /^ Sound,$/;" e enum:MessageContentMatchKind file:
|
||||
SourceMessageDeleted DiscordChatExporter.Core/Discord/Data/MessageFlags.cs /^ SourceMessageDeleted = 8,$/;" e enum:MessageFlags file:
|
||||
Spoiler DiscordChatExporter.Core/Markdown/FormattingKind.cs /^ Spoiler,$/;" e enum:FormattingKind file:
|
||||
SpoilerFormattingNodeMatcher DiscordChatExporter.Core/Markdown/Parsing/MarkdownParser.cs /^ private static readonly IMatcher<MarkdownContext, MarkdownNode> SpoilerFormattingNodeMatcher/;" f class:MarkdownParser file:
|
||||
SpotifyTrackEmbedProjection DiscordChatExporter.Core/Discord/Data/Embeds/SpotifyTrackEmbedProjection.cs /^public partial record SpotifyTrackEmbedProjection$/;" p
|
||||
SpotifyTrackEmbedProjection DiscordChatExporter.Core/Discord/Data/Embeds/SpotifyTrackEmbedProjection.cs /^public partial record SpotifyTrackEmbedProjection(string TrackId)$/;" m
|
||||
StandardEmojiNodeMatcher DiscordChatExporter.Core/Markdown/Parsing/MarkdownParser.cs /^ private static readonly IMatcher<MarkdownContext, MarkdownNode> StandardEmojiNodeMatcher =$/;" f class:MarkdownParser file:
|
||||
StartShellExecute DiscordChatExporter.Gui/Utils/ProcessEx.cs /^ public static void StartShellExecute(string path)$/;" m class:ProcessEx
|
||||
StartTaskAsync DiscordChatExporter.Cli/Utils/Extensions/ConsoleExtensions.cs /^ public static async ValueTask StartTaskAsync($/;" m class:ConsoleExtensions
|
||||
Step 1 .docs/Using-the-CLI.md /^## Step 1$/;" s chapter:Using the CLI
|
||||
Step 1 .docs/Using-the-GUI.md /^### Step 1$/;" S section:Using the GUI""Guide
|
||||
Step 2 .docs/Using-the-CLI.md /^## Step 2$/;" s chapter:Using the CLI
|
||||
Step 2 .docs/Using-the-GUI.md /^### Step 2$/;" S section:Using the GUI""Guide
|
||||
Step 3 .docs/Using-the-CLI.md /^## Step 3$/;" s chapter:Using the CLI
|
||||
Step 3 .docs/Using-the-GUI.md /^### Step 3$/;" S section:Using the GUI""Guide
|
||||
Step 4 .docs/Using-the-GUI.md /^### Step 4$/;" S section:Using the GUI""Guide
|
||||
Sticker DiscordChatExporter.Core/Discord/Data/Sticker.cs /^public partial record Sticker$/;" p
|
||||
Sticker DiscordChatExporter.Core/Discord/Data/Sticker.cs /^public partial record Sticker(Snowflake Id, string Name, StickerFormat Format, string SourceUrl)$/;" m
|
||||
StickerFormat DiscordChatExporter.Core/Discord/Data/StickerFormat.cs /^public enum StickerFormat$/;" g
|
||||
StickerTestCases DiscordChatExporter.Cli.Tests/Infra/ChannelIds.cs /^ public static Snowflake StickerTestCases { get; } = Snowflake.Parse("939668868253769729");$/;" p class:ChannelIds
|
||||
Strikethrough DiscordChatExporter.Core/Markdown/FormattingKind.cs /^ Strikethrough,$/;" e enum:FormattingKind file:
|
||||
StrikethroughFormattingNodeMatcher DiscordChatExporter.Core/Markdown/Parsing/MarkdownParser.cs /^ > StrikethroughFormattingNodeMatcher = new RegexMatcher<MarkdownContext, MarkdownNode>($/;" f class:MarkdownParser file:
|
||||
String DiscordChatExporter.Core/Exporting/Filtering/Parsing/FilterGrammar.cs /^ private static readonly TextParser<string> String = Parse$/;" f class:FilterGrammar file:
|
||||
StringExtensions DiscordChatExporter.Cli.Tests/Utils/Extensions/StringExtensions.cs /^internal static class StringExtensions$/;" c
|
||||
StringExtensions DiscordChatExporter.Core/Utils/Extensions/StringExtensions.cs /^public static class StringExtensions$/;" c
|
||||
StringMatcher DiscordChatExporter.Core/Markdown/Parsing/StringMatcher.cs /^internal class StringMatcher<TContext, TValue>($/;" m
|
||||
StringSegment DiscordChatExporter.Core/Markdown/Parsing/StringSegment.cs /^internal readonly record struct StringSegment(string Source, int StartIndex, int Length)$/;" m
|
||||
SuperpowerExtensions DiscordChatExporter.Core/Utils/Extensions/SuperpowerExtensions.cs /^public static class SuperpowerExtensions$/;" c
|
||||
SuppressEmbeds DiscordChatExporter.Core/Discord/Data/MessageFlags.cs /^ SuppressEmbeds = 4,$/;" e enum:MessageFlags file:
|
||||
System DiscordChatExporter.Gui/Framework/ThemeVariant.cs /^ System,$/;" e enum:ThemeVariant file:
|
||||
TempDir DiscordChatExporter.Cli.Tests/Utils/TempDir.cs /^internal partial class TempDir$/;" c
|
||||
TempDir DiscordChatExporter.Cli.Tests/Utils/TempDir.cs /^internal partial class TempDir(string path) : IDisposable$/;" m
|
||||
TempFile DiscordChatExporter.Cli.Tests/Utils/TempFile.cs /^internal partial class TempFile$/;" c
|
||||
TempFile DiscordChatExporter.Cli.Tests/Utils/TempFile.cs /^internal partial class TempFile(string path) : IDisposable$/;" m
|
||||
Terms of use<sup>[[?]](https://github.com/Tyrrrz/.github/blob/master/docs/why-so-political.md)</sup> Readme.md /^## Terms of use<sup>[[?]](https:\/\/github.com\/Tyrrrz\/.github\/blob\/master\/docs\/why-so-poli/;" s chapter:DiscordChatExporter
|
||||
Text DiscordChatExporter.Core/Utils/Extensions/SuperpowerExtensions.cs /^ public static TextParser<string> Text(this TextParser<char[]> parser) =>$/;" m class:SuperpowerExtensions
|
||||
Text DiscordChatExporter.Gui/Views/Controls/HyperLink.axaml.cs /^ public string? Text$/;" p class:HyperLink
|
||||
TextNode DiscordChatExporter.Core/Markdown/TextNode.cs /^internal record TextNode(string Text) : MarkdownNode;$/;" m
|
||||
TextProperty DiscordChatExporter.Gui/Views/Controls/HyperLink.axaml.cs /^ public static readonly StyledProperty<string?> TextProperty =$/;" f class:HyperLink
|
||||
The exported file is too large, I can't open it .docs/Troubleshooting.md /^### The exported file is too large, I can't open it$/;" S section:Troubleshooting""First steps
|
||||
Theme DiscordChatExporter.Gui/ViewModels/Dialogs/SettingsViewModel.cs /^ public ThemeVariant Theme$/;" p class:SettingsViewModel
|
||||
ThemeVariant DiscordChatExporter.Gui/Framework/ThemeVariant.cs /^public enum ThemeVariant$/;" g
|
||||
ThreadCreated DiscordChatExporter.Core/Discord/Data/MessageKind.cs /^ ThreadCreated = 18,$/;" e enum:MessageKind file:
|
||||
ThreadInclusionMode DiscordChatExporter.Cli/Commands/ExportAllCommand.cs /^ public ThreadInclusionMode ThreadInclusionMode { get; init; } = ThreadInclusionMode.None;$/;" p class:ExportAllCommand
|
||||
ThreadInclusionMode DiscordChatExporter.Cli/Commands/ExportGuildCommand.cs /^ public ThreadInclusionMode ThreadInclusionMode { get; init; } = ThreadInclusionMode.None;$/;" p class:ExportGuildCommand
|
||||
ThreadInclusionMode DiscordChatExporter.Cli/Commands/GetChannelsCommand.cs /^ public ThreadInclusionMode ThreadInclusionMode { get; init; } = ThreadInclusionMode.None;$/;" p class:GetChannelsCommand
|
||||
ThreadInclusionMode DiscordChatExporter.Cli/Commands/Shared/ThreadInclusionMode.cs /^public enum ThreadInclusionMode$/;" g
|
||||
ThreadInclusionMode DiscordChatExporter.Gui/Models/ThreadInclusionMode.cs /^public enum ThreadInclusionMode$/;" g
|
||||
ThreadInclusionMode DiscordChatExporter.Gui/ViewModels/Dialogs/SettingsViewModel.cs /^ public ThreadInclusionMode ThreadInclusionMode$/;" p class:SettingsViewModel
|
||||
ThreadInclusionModeBindingConverter DiscordChatExporter.Cli/Commands/Converters/ThreadInclusionModeBindingConverter.cs /^internal class ThreadInclusionModeBindingConverter : BindingConverter<ThreadInclusionMode>$/;" c
|
||||
Through the desktop app / enabling web developer tools .docs/Token-and-IDs.md /^### Through the desktop app \/ enabling web developer tools$/;" S section:Obtaining Token and Channel IDs""How to get a User Token
|
||||
Through your web browser .docs/Token-and-IDs.md /^### Through your web browser$/;" S section:Obtaining Token and Channel IDs""How to get a User Token
|
||||
TimeSpanExtensions DiscordChatExporter.Core/Utils/Extensions/TimeSpanExtensions.cs /^public static class TimeSpanExtensions$/;" c
|
||||
TimestampNodeMatcher DiscordChatExporter.Core/Markdown/Parsing/MarkdownParser.cs /^ private static readonly IMatcher<MarkdownContext, MarkdownNode> TimestampNodeMatcher =$/;" f class:MarkdownParser file:
|
||||
ToHex DiscordChatExporter.Core/Utils/Extensions/BinaryExtensions.cs /^ public static string ToHex(this byte[] data, bool isUpperCase = true)$/;" m class:BinaryExtensions
|
||||
ToHex DiscordChatExporter.Core/Utils/Extensions/ColorExtensions.cs /^ public static string ToHex(this Color color) => $"#{color.R:X2}{color.G:X2}{color.B:X2}";$/;" m class:ColorExtensions
|
||||
ToRgb DiscordChatExporter.Core/Utils/Extensions/ColorExtensions.cs /^ public static int ToRgb(this Color color) => color.ToArgb() & 0xffffff;$/;" m class:ColorExtensions
|
||||
ToSingletonEnumerable DiscordChatExporter.Core/Utils/Extensions/CollectionExtensions.cs /^ public static IEnumerable<T> ToSingletonEnumerable<T>(this T obj)$/;" m class:CollectionExtensions
|
||||
ToSpaceSeparatedWords DiscordChatExporter.Core/Utils/Extensions/StringExtensions.cs /^ public static string ToSpaceSeparatedWords(this string str)$/;" m class:StringExtensions
|
||||
Token DiscordChatExporter.Cli/Commands/Base/DiscordCommandBase.cs /^ public required string Token { get; init; }$/;" p class:DiscordCommandBase
|
||||
Token DiscordChatExporter.Core/Utils/Extensions/SuperpowerExtensions.cs /^ public static TextParser<T> Token<T>(this TextParser<T> parser) =>$/;" m class:SuperpowerExtensions
|
||||
Token stealer? .docs/Troubleshooting.md /^### Token stealer?$/;" S section:Troubleshooting""General questions
|
||||
TokenKind DiscordChatExporter.Core/Discord/TokenKind.cs /^public enum TokenKind$/;" g
|
||||
Troubleshooting .docs/Troubleshooting.md /^# Troubleshooting$/;" c
|
||||
Truncate DiscordChatExporter.Core/Utils/Extensions/StringExtensions.cs /^ public static string Truncate(this string str, int charCount) =>$/;" m class:StringExtensions
|
||||
TruthyBooleanBindingConverter DiscordChatExporter.Cli/Commands/Converters/TruthyBooleanBindingConverter.cs /^internal class TruthyBooleanBindingConverter : BindingConverter<bool>$/;" c
|
||||
TryBindView DiscordChatExporter.Gui/Framework/ViewManager.cs /^ public Control? TryBindView(ViewModelBase viewModel)$/;" m class:ViewManager
|
||||
TryGetCode DiscordChatExporter.Core/Discord/Data/EmojiIndex.cs /^ public static string? TryGetCode(string name) => _toCodes.GetValueOrDefault(name);$/;" m class:EmojiIndex
|
||||
TryGetMainWindow DiscordChatExporter.Gui/Utils/Extensions/AvaloniaExtensions.cs /^ public static Window? TryGetMainWindow(this IApplicationLifetime lifetime) =>$/;" m class:AvaloniaExtensions
|
||||
TryGetName DiscordChatExporter.Core/Discord/Data/EmojiIndex.cs /^ public static string? TryGetName(string code) => _fromCodes.GetValueOrDefault(code);$/;" m class:EmojiIndex
|
||||
TryGetTopLevel DiscordChatExporter.Gui/Utils/Extensions/AvaloniaExtensions.cs /^ public static TopLevel? TryGetTopLevel(this IApplicationLifetime lifetime) =>$/;" m class:AvaloniaExtensions
|
||||
TryGetValue DiscordChatExporter.Core/Utils/Extensions/HttpExtensions.cs /^ public static string? TryGetValue(this HttpHeaders headers, string name) =>$/;" m class:HttpExtensions
|
||||
TryMatch DiscordChatExporter.Core/Markdown/Parsing/IMatcher.cs /^ ParsedMatch<TValue>? TryMatch(TContext context, StringSegment segment);$/;" m interface:IMatcher
|
||||
TryParse DiscordChatExporter.Core/Discord/Snowflake.cs /^ public static Snowflake? TryParse(string? value, IFormatProvider? formatProvider = null)$/;" m struct:Snowflake
|
||||
TryParse DiscordChatExporter.Core/Exporting/Partitioning/PartitionLimit.cs /^ public static PartitionLimit? TryParse(string value, IFormatProvider? formatProvider = null)$/;" m class:PartitionLimit
|
||||
TryParseFileSizeBytes DiscordChatExporter.Core/Exporting/Partitioning/PartitionLimit.cs /^ private static long? TryParseFileSizeBytes(string value, IFormatProvider? formatProvider = n/;" m class:PartitionLimit file:
|
||||
TryShutdown DiscordChatExporter.Gui/Utils/Extensions/AvaloniaExtensions.cs /^ public static bool TryShutdown(this IApplicationLifetime lifetime, int exitCode = 0)$/;" m class:AvaloniaExtensions
|
||||
TwitchClipEmbedProjection DiscordChatExporter.Core/Discord/Data/Embeds/TwitchClipEmbedProjection.cs /^public partial record TwitchClipEmbedProjection$/;" p
|
||||
TwitchClipEmbedProjection DiscordChatExporter.Core/Discord/Data/Embeds/TwitchClipEmbedProjection.cs /^public partial record TwitchClipEmbedProjection(string ClipId)$/;" m
|
||||
Underline DiscordChatExporter.Core/Markdown/FormattingKind.cs /^ Underline,$/;" e enum:FormattingKind file:
|
||||
UnderlineFormattingNodeMatcher DiscordChatExporter.Core/Markdown/Parsing/MarkdownParser.cs /^ private static readonly IMatcher<MarkdownContext, MarkdownNode> UnderlineFormattingNodeMatch/;" f class:MarkdownParser file:
|
||||
Unix permissions issues .docs/Docker.md /^## Unix permissions issues$/;" s chapter:Docker usage instructions
|
||||
UnquotedString DiscordChatExporter.Core/Exporting/Filtering/Parsing/FilterGrammar.cs /^ private static readonly TextParser<string> UnquotedString = Parse$/;" f class:FilterGrammar file:
|
||||
UpdateService DiscordChatExporter.Gui/Services/UpdateService.cs /^public class UpdateService(SettingsService settingsService) : IDisposable$/;" m
|
||||
Urgent DiscordChatExporter.Core/Discord/Data/MessageFlags.cs /^ Urgent = 16,$/;" e enum:MessageFlags file:
|
||||
UrlBuilder DiscordChatExporter.Core/Utils/UrlBuilder.cs /^public class UrlBuilder$/;" c
|
||||
Usage .docs/Docker.md /^## Usage$/;" s chapter:Docker usage instructions
|
||||
User DiscordChatExporter.Core/Discord/Data/User.cs /^public partial record User$/;" p
|
||||
User DiscordChatExporter.Core/Discord/Data/User.cs /^public partial record User($/;" m
|
||||
User DiscordChatExporter.Core/Discord/TokenKind.cs /^ User,$/;" e enum:TokenKind file:
|
||||
User DiscordChatExporter.Core/Markdown/MentionKind.cs /^ User,$/;" e enum:MentionKind file:
|
||||
UserControl DiscordChatExporter.Gui/Framework/UserControl.cs /^public class UserControl<TDataContext> : UserControl$/;" c
|
||||
UserMentionNodeMatcher DiscordChatExporter.Core/Markdown/Parsing/MarkdownParser.cs /^ private static readonly IMatcher<MarkdownContext, MarkdownNode> UserMentionNodeMatcher =$/;" f class:MarkdownParser file:
|
||||
Using the CLI .docs/Using-the-CLI.md /^# Using the CLI$/;" c
|
||||
Using the GUI .docs/Using-the-GUI.md /^# Using the GUI$/;" c
|
||||
Using the console .docs/Token-and-IDs.md /^##### Using the console$/;" T subsubsection:Obtaining Token and Channel IDs""How to get a User Token""Through your web browser""In Chrome
|
||||
Using the console .docs/Token-and-IDs.md /^##### Using the console$/;" T subsubsection:Obtaining Token and Channel IDs""How to get a User Token""Through your web browser""In Firefox
|
||||
Using the network monitor .docs/Token-and-IDs.md /^##### Using the network monitor$/;" T subsubsection:Obtaining Token and Channel IDs""How to get a User Token""Through your web browser""In Chrome
|
||||
Using the network monitor .docs/Token-and-IDs.md /^##### Using the network monitor$/;" T subsubsection:Obtaining Token and Channel IDs""How to get a User Token""Through your web browser""In Firefox
|
||||
Using the storage inspector .docs/Token-and-IDs.md /^##### Using the storage inspector$/;" T subsubsection:Obtaining Token and Channel IDs""How to get a User Token""Through your web browser""In Chrome
|
||||
Using the storage inspector .docs/Token-and-IDs.md /^##### Using the storage inspector$/;" T subsubsection:Obtaining Token and Channel IDs""How to get a User Token""Through your web browser""In Firefox
|
||||
VerificationPendingGuildLimit DiscordChatExporter.Core/Discord/Data/ApplicationFlags.cs /^ VerificationPendingGuildLimit = 65536,$/;" e enum:ApplicationFlags file:
|
||||
Version DiscordChatExporter.Gui/Program.cs /^ public static Version Version { get; } = Assembly.GetName().Version ?? new Version(0, 0, 0);$/;" p class:Program
|
||||
VersionString DiscordChatExporter.Gui/Program.cs /^ public static string VersionString { get; } = Version.ToString(3);$/;" p class:Program
|
||||
Via settings menu (BetterDiscord only) .docs/Token-and-IDs.md /^#### Via settings menu (BetterDiscord only)$/;" t subsection:Obtaining Token and Channel IDs""How to get a User Token""Through the desktop app / enabling web developer tools
|
||||
Video DiscordChatExporter.Core/Discord/Data/Embeds/EmbedKind.cs /^ Video,$/;" e enum:EmbedKind file:
|
||||
Video DiscordChatExporter.Core/Exporting/Filtering/MessageContentMatchKind.cs /^ Video,$/;" e enum:MessageContentMatchKind file:
|
||||
Video tutorial .docs/Readme.md /^## Video tutorial$/;" s chapter:Home
|
||||
Video tutorial .docs/Using-the-GUI.md /^## Video tutorial$/;" s chapter:Using the GUI
|
||||
ViewManager DiscordChatExporter.Gui/Framework/ViewManager.cs /^public partial class ViewManager : IDataTemplate$/;" c
|
||||
ViewManager DiscordChatExporter.Gui/Framework/ViewManager.cs /^public partial class ViewManager$/;" c
|
||||
ViewModelBase DiscordChatExporter.Gui/Framework/ViewModelBase.cs /^public abstract class ViewModelBase : ObservableObject, IDisposable$/;" c
|
||||
ViewModelManager DiscordChatExporter.Gui/Framework/ViewModelManager.cs /^public class ViewModelManager(IServiceProvider services)$/;" m
|
||||
VisitAsync DiscordChatExporter.Core/Markdown/Parsing/MarkdownVisitor.cs /^ public async ValueTask VisitAsync($/;" m class:MarkdownVisitor
|
||||
VisitEmojiAsync DiscordChatExporter.Core/Markdown/Parsing/MarkdownVisitor.cs /^ protected virtual ValueTask VisitEmojiAsync($/;" m class:MarkdownVisitor
|
||||
VisitFormattingAsync DiscordChatExporter.Core/Markdown/Parsing/MarkdownVisitor.cs /^ protected virtual async ValueTask VisitFormattingAsync($/;" m class:MarkdownVisitor
|
||||
VisitHeadingAsync DiscordChatExporter.Core/Markdown/Parsing/MarkdownVisitor.cs /^ protected virtual async ValueTask VisitHeadingAsync($/;" m class:MarkdownVisitor
|
||||
VisitInlineCodeBlockAsync DiscordChatExporter.Core/Markdown/Parsing/MarkdownVisitor.cs /^ protected virtual ValueTask VisitInlineCodeBlockAsync($/;" m class:MarkdownVisitor
|
||||
VisitLinkAsync DiscordChatExporter.Core/Markdown/Parsing/MarkdownVisitor.cs /^ protected virtual async ValueTask VisitLinkAsync($/;" m class:MarkdownVisitor
|
||||
VisitListAsync DiscordChatExporter.Core/Markdown/Parsing/MarkdownVisitor.cs /^ protected virtual async ValueTask VisitListAsync($/;" m class:MarkdownVisitor
|
||||
VisitListItemAsync DiscordChatExporter.Core/Markdown/Parsing/MarkdownVisitor.cs /^ protected virtual async ValueTask VisitListItemAsync($/;" m class:MarkdownVisitor
|
||||
VisitMentionAsync DiscordChatExporter.Core/Markdown/Parsing/MarkdownVisitor.cs /^ protected virtual ValueTask VisitMentionAsync($/;" m class:MarkdownVisitor
|
||||
VisitMultiLineCodeBlockAsync DiscordChatExporter.Core/Markdown/Parsing/MarkdownVisitor.cs /^ protected virtual ValueTask VisitMultiLineCodeBlockAsync($/;" m class:MarkdownVisitor
|
||||
VisitTextAsync DiscordChatExporter.Core/Markdown/Parsing/MarkdownVisitor.cs /^ protected virtual ValueTask VisitTextAsync($/;" m class:MarkdownVisitor
|
||||
VisitTimestampAsync DiscordChatExporter.Core/Markdown/Parsing/MarkdownVisitor.cs /^ protected virtual ValueTask VisitTimestampAsync($/;" m class:MarkdownVisitor
|
||||
WaitForCloseAsync DiscordChatExporter.Gui/Framework/DialogVIewModelBase.cs /^ public async Task<T> WaitForCloseAsync() => await _closeTcs.Task;$/;" m class:DialogViewModelBase
|
||||
When I open DCE a black window pops up quickly or nothing shows up .docs/Troubleshooting.md /^### When I open DCE a black window pops up quickly or nothing shows up$/;" S section:Troubleshooting""First steps
|
||||
Where can I find the 'Channel IDs'? .docs/Troubleshooting.md /^### Where can I find the 'Channel IDs'?$/;" S section:Troubleshooting""CLI
|
||||
Why should I be worried about the safety of my token? .docs/Troubleshooting.md /^### Why should I be worried about the safety of my token?$/;" S section:Troubleshooting""General questions
|
||||
Will I get banned if I use this? .docs/Troubleshooting.md /^### Will I get banned if I use this?$/;" S section:Troubleshooting""General questions
|
||||
Will the messages disappear from the exported file if I delete a message, delete my account or block a person? .docs/Troubleshooting.md /^### Will the messages disappear from the exported file if I delete a message, delete my account /;" S section:Troubleshooting""General questions
|
||||
Window DiscordChatExporter.Gui/Framework/Window.cs /^public class Window<TDataContext> : Window$/;" c
|
||||
Windows DiscordChatExporter.Gui/Utils/NativeMethods.cs /^ public static class Windows$/;" c class:NativeMethods
|
||||
WithAlpha DiscordChatExporter.Core/Utils/Extensions/ColorExtensions.cs /^ public static Color WithAlpha(this Color color, int alpha) => Color.FromArgb(alpha, color);$/;" m class:ColorExtensions
|
||||
WithIndex DiscordChatExporter.Core/Utils/Extensions/CollectionExtensions.cs /^ public static IEnumerable<(T value, int index)> WithIndex<T>(this IEnumerable<T> source)$/;" m class:CollectionExtensions
|
||||
YouTubeVideoEmbedProjection DiscordChatExporter.Core/Discord/Data/Embeds/YouTubeVideoEmbedProjection.cs /^public partial record YouTubeVideoEmbedProjection$/;" p
|
||||
YouTubeVideoEmbedProjection DiscordChatExporter.Core/Discord/Data/Embeds/YouTubeVideoEmbedProjection.cs /^public partial record YouTubeVideoEmbedProjection(string VideoId)$/;" m
|
||||
Zero DiscordChatExporter.Core/Discord/Snowflake.cs /^ public static Snowflake Zero { get; } = new(0);$/;" p struct:Snowflake
|
||||
_assetsDirPath DiscordChatExporter.Cli/Commands/Base/ExportCommandBase.cs /^ private readonly string? _assetsDirPath;$/;" f class:ExportCommandBase file:
|
||||
_availableChannels DiscordChatExporter.Gui/ViewModels/Components/DashboardViewModel.cs /^ private IReadOnlyList<ChannelConnection>? _availableChannels;$/;" f class:DashboardViewModel file:
|
||||
_availableGuilds DiscordChatExporter.Gui/ViewModels/Components/DashboardViewModel.cs /^ private IReadOnlyList<Guild>? _availableGuilds;$/;" f class:DashboardViewModel file:
|
||||
_cancelButtonText DiscordChatExporter.Gui/ViewModels/Dialogs/MessageBoxViewModel.cs /^ private string? _cancelButtonText = "Cancel";$/;" f class:MessageBoxViewModel file:
|
||||
_channelExporter DiscordChatExporter.Cli/Commands/Base/ExportCommandBase.cs /^ private ChannelExporter? _channelExporter;$/;" f class:ExportCommandBase file:
|
||||
_closeTcs DiscordChatExporter.Gui/Framework/DialogVIewModelBase.cs /^ private readonly TaskCompletionSource<T> _closeTcs = new($/;" f class:DialogViewModelBase file:
|
||||
_defaultButtonText DiscordChatExporter.Gui/ViewModels/Dialogs/MessageBoxViewModel.cs /^ private string? _defaultButtonText = "OK";$/;" f class:MessageBoxViewModel file:
|
||||
_defaultDuration DiscordChatExporter.Gui/Framework/SnackbarManager.cs /^ private readonly TimeSpan _defaultDuration = TimeSpan.FromSeconds(5);$/;" f class:SnackbarManager file:
|
||||
_dialogLock DiscordChatExporter.Gui/Framework/DialogManager.cs /^ private readonly AsyncNonKeyedLocker _dialogLock = new();$/;" f class:DialogManager file:
|
||||
_dialogManager DiscordChatExporter.Gui/ViewModels/Components/DashboardViewModel.cs /^ private readonly DialogManager _dialogManager;$/;" f class:DashboardViewModel file:
|
||||
_dialogResult DiscordChatExporter.Gui/Framework/DialogVIewModelBase.cs /^ private T? _dialogResult;$/;" f class:DialogViewModelBase file:
|
||||
_discord DiscordChatExporter.Gui/ViewModels/Components/DashboardViewModel.cs /^ private DiscordClient? _discord;$/;" f class:DashboardViewModel file:
|
||||
_discordClient DiscordChatExporter.Cli/Commands/Base/DiscordCommandBase.cs /^ private DiscordClient? _discordClient;$/;" f class:DiscordCommandBase file:
|
||||
_eventRoot DiscordChatExporter.Gui/App.axaml.cs /^ private readonly DisposableCollector _eventRoot = new();$/;" f class:App file:
|
||||
_eventRoot DiscordChatExporter.Gui/ViewModels/Components/DashboardViewModel.cs /^ private readonly DisposableCollector _eventRoot = new();$/;" f class:DashboardViewModel file:
|
||||
_eventRoot DiscordChatExporter.Gui/ViewModels/Dialogs/SettingsViewModel.cs /^ private readonly DisposableCollector _eventRoot = new();$/;" f class:SettingsViewModel file:
|
||||
_fromCodes DiscordChatExporter.Core/Discord/Data/EmojiIndex.cs /^ private static Dictionary<string, string> _fromCodes = new(5000, StringComparer.Ordinal)$/;" f class:EmojiIndex file:
|
||||
_isBusy DiscordChatExporter.Gui/ViewModels/Components/DashboardViewModel.cs /^ private bool _isBusy;$/;" f class:DashboardViewModel file:
|
||||
_items DiscordChatExporter.Gui/Utils/DisposableCollector.cs /^ private readonly List<IDisposable> _items = [];$/;" f class:DisposableCollector file:
|
||||
_lock DiscordChatExporter.Gui/Utils/DisposableCollector.cs /^ private readonly object _lock = new();$/;" f class:DisposableCollector file:
|
||||
_mainViewModel DiscordChatExporter.Gui/App.axaml.cs /^ private readonly MainViewModel _mainViewModel;$/;" f class:App file:
|
||||
_message DiscordChatExporter.Gui/ViewModels/Dialogs/MessageBoxViewModel.cs /^ private string? _message = "Message";$/;" f class:MessageBoxViewModel file:
|
||||
_outputPath DiscordChatExporter.Cli/Commands/Base/ExportCommandBase.cs /^ private readonly string _outputPath = Directory.GetCurrentDirectory();$/;" f class:ExportCommandBase file:
|
||||
_path DiscordChatExporter.Core/Utils/UrlBuilder.cs /^ private string _path = "";$/;" f class:UrlBuilder file:
|
||||
_progressMuxer DiscordChatExporter.Gui/ViewModels/Components/DashboardViewModel.cs /^ private readonly AutoResetProgressMuxer _progressMuxer;$/;" f class:DashboardViewModel file:
|
||||
_queryParameters DiscordChatExporter.Core/Utils/UrlBuilder.cs /^ private readonly Dictionary<string, string?> _queryParameters = new($/;" f class:UrlBuilder file:
|
||||
_selectedGuild DiscordChatExporter.Gui/ViewModels/Components/DashboardViewModel.cs /^ private Guild? _selectedGuild;$/;" f class:DashboardViewModel file:
|
||||
_services DiscordChatExporter.Gui/App.axaml.cs /^ private readonly ServiceProvider _services;$/;" f class:App file:
|
||||
_settingsService DiscordChatExporter.Gui/App.axaml.cs /^ private readonly SettingsService _settingsService;$/;" f class:App file:
|
||||
_settingsService DiscordChatExporter.Gui/ViewModels/Components/DashboardViewModel.cs /^ private readonly SettingsService _settingsService;$/;" f class:DashboardViewModel file:
|
||||
_settingsService DiscordChatExporter.Gui/ViewModels/Dialogs/SettingsViewModel.cs /^ private readonly SettingsService _settingsService;$/;" f class:SettingsViewModel file:
|
||||
_snackbarManager DiscordChatExporter.Gui/ViewModels/Components/DashboardViewModel.cs /^ private readonly SnackbarManager _snackbarManager;$/;" f class:DashboardViewModel file:
|
||||
_title DiscordChatExporter.Gui/ViewModels/Dialogs/MessageBoxViewModel.cs /^ private string? _title = "Title";$/;" f class:MessageBoxViewModel file:
|
||||
_toCodes DiscordChatExporter.Core/Discord/Data/EmojiIndex.cs /^ private static Dictionary<string, string> _toCodes = new(5000, StringComparer.Ordinal)$/;" f class:EmojiIndex file:
|
||||
_token DiscordChatExporter.Gui/ViewModels/Components/DashboardViewModel.cs /^ private string? _token;$/;" f class:DashboardViewModel file:
|
||||
_viewModelManager DiscordChatExporter.Gui/ViewModels/Components/DashboardViewModel.cs /^ private readonly ViewModelManager _viewModelManager;$/;" f class:DashboardViewModel file:
|
||||
channelId DiscordChatExporter.Cli.Tests/Infra/ExportWrapper.cs /^ Snowflake channelId$/;" f class:ExportWrapper
|
||||
channelId DiscordChatExporter.Cli.Tests/Infra/ExportWrapper.cs /^ public static async ValueTask<IHtmlDocument> ExportAsHtmlAsync(Snowflake channelId) =>$/;" f class:ExportWrapper
|
||||
channelId DiscordChatExporter.Cli.Tests/Infra/ExportWrapper.cs /^ public static async ValueTask<JsonElement> ExportAsJsonAsync(Snowflake channelId) =>$/;" f class:ExportWrapper
|
||||
channelId DiscordChatExporter.Cli.Tests/Infra/ExportWrapper.cs /^ public static async ValueTask<string> ExportAsCsvAsync(Snowflake channelId) =>$/;" f class:ExportWrapper
|
||||
channelId DiscordChatExporter.Cli.Tests/Infra/ExportWrapper.cs /^ public static async ValueTask<string> ExportAsPlainTextAsync(Snowflake channelId) =>$/;" f class:ExportWrapper
|
||||
exception DiscordChatExporter.Core/Utils/Http.cs /^ private static bool IsRetryableException(Exception exception) =>$/;" f class:Http file:
|
||||
instant DiscordChatExporter.Core/Discord/Snowflake.cs /^ public static Snowflake FromDate(DateTimeOffset instant) =>$/;" f struct:Snowflake
|
||||
message DiscordChatExporter.Core/Exporting/Filtering/NullMessageFilter.cs /^ public override bool IsMatch(Message message) => true;$/;" f class:NullMessageFilter
|
||||
methodDisplay DiscordChatExporter.Cli.Tests/xunit.runner.json /^ "methodDisplay": "method"$/;" s
|
||||
methodDisplayOptions DiscordChatExporter.Cli.Tests/xunit.runner.json /^ "methodDisplayOptions": "all",$/;" s
|
||||
operator > DiscordChatExporter.Core/Discord/Snowflake.cs /^ public static bool operator >(Snowflake left, Snowflake right) => left.CompareTo(right) > 0;$/;" m struct:Snowflake
|
||||
other DiscordChatExporter.Core/Discord/Snowflake.cs /^ public int CompareTo(Snowflake other) => Value.CompareTo(other.Value);$/;" f struct:Snowflake
|
||||
statusCode DiscordChatExporter.Core/Utils/Http.cs /^ private static bool IsRetryableStatusCode(HttpStatusCode statusCode) =>$/;" f class:Http file:
|
||||
viewModel DiscordChatExporter.Gui/Framework/ViewManager.cs /^ private Control? TryCreateView(ViewModelBase viewModel) =>$/;" f class:ViewManager file:
|
||||
~ViewModelBase DiscordChatExporter.Gui/Framework/ViewModelBase.cs /^ ~ViewModelBase() => Dispose(false);$/;" m class:ViewModelBase file:
|
Loading…
Add table
Add a link
Reference in a new issue