-
Notifications
You must be signed in to change notification settings - Fork 37
Expand file tree
/
Copy pathLabApiConfig.cs
More file actions
54 lines (48 loc) · 2.57 KB
/
LabApiConfig.cs
File metadata and controls
54 lines (48 loc) · 2.57 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
using LabApi.Loader.Features.Paths;
using System.Collections.Generic;
using System.ComponentModel;
namespace LabApi.Loader.Features.Configuration;
/// <summary>
/// Configuration for LabAPI core functionality.
/// </summary>
public class LabApiConfig
{
/// <summary>
/// List of dependency paths relative to <see cref="PathManager.Dependencies"/>.
/// </summary>
[Description("List of dependency paths relative to the Dependencies folder to load from. Use $port to load from the server port's folder.")]
public List<string> DependencyPaths { get; set; } = ["global", "$port"];
/// <summary>
/// List of plugin paths relative to <see cref="PathManager.Plugins"/>.
/// </summary>
[Description("List of plugin paths relative to the Plugins folder to load from. Use $port to load from the server port's folder.")]
public List<string> PluginPaths { get; set; } = ["global", "$port"];
/// <summary>
/// Whether to allow loading plugins even if they were built for a different major version of LabAPI.
/// </summary>
/// <seealso cref="LabApi.Loader.Features.Plugins.Configuration.Properties.UnsupportedLoading"/>
[Description("Whether to allow loading plugins even if they were built for a different major version of LabAPI.")]
public bool LoadUnsupportedPlugins { get; set; }
/// <summary>
/// Gets or sets the list of NuGet package source URLs used when resolving
/// and downloading dependencies from NuGet repositories.
/// </summary>
/// <remarks>
/// Each entry in this list represents a NuGet feed endpoint (for example,
/// the official <c>https://api.nuget.org/v3/index.json</c> source).
/// Multiple sources can be specified to support private or custom feeds.
/// </remarks>
[Description("List of NuGet package sources to use when resolving dependencies via NuGet.")]
public string[] NugetPackageSources { get; set; } = ["https://api.nuget.org/v3/index.json"];
/// <summary>
/// Gets or sets a value indicating whether dependencies should be automatically
/// downloaded from the configured NuGet sources when they are missing or outdated.
/// </summary>
/// <remarks>
/// When set to <see langword="true"/>, the system attempts to retrieve and install
/// required packages automatically during dependency resolution.
/// Disabling this option may require manual dependency management.
/// </remarks>
[Description("Automatically download dependencies from NuGet when missing or outdated.")]
public bool AutomaticallyDownloadDependencies { get; set; } = true;
}